본문 바로가기

기록

spring프로젝트_0915

spring 자동완성 안될때 content Assistence 설정 

https://devlimk1.tistory.com/9

 

[Eclipse_꿀팁(tips)] Ctrl+Space는 그만! 글자 입력하기만하면 Content Assist(자동완성기능)가 실행되는 방

데브림의 블로그 포스팅 한 것들을 한 눈에 확인하고 싶다면 클릭! 👉 https://github.com/DevLimK1/tistory-map 👈 eclipse가 아닌 intellij를 사용해본 사람이라면 글자를 입력하기만해도 메소드나 어노테

devlimk1.tistory.com

web.xml 필터 인코딩 설정 후 tomcat오류 Could not find or load main class org.apache.catalina.startup.bootstrap

*** 다음의 web.xml 맨 상단에 있는 <web-appp> 태그 설정을 변경해주는 방법을 보고 적용하고 되돌리다가 설정이 꼬여서 404를 만났었는데 다음부터는 이 글 맨 하단의 방법대로 fillter만 적용해주자

<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee https://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">

> 필터 적용 해제 후 maven update / server 재설치/ buildpath runtime environment 재설정 > 모두 x

> sts 종료 후, m2폴더 내 org 파일만 삭제 후 sts 재시작/재빌드  > 서버구동 확인 > 경로 404

> tomcat 설치 폴더 > bin 폴더 > start.up.bat 인코딩 깨짐 / log 파일은 안깨짐 > 하기 링크 참고하여 한글 확인

https://supermalta.tistory.com/80 

 

톰캣 startup.bat 실행시 한글깨질때 방법

실행창에 regedit 입력후 레지스트리 편집창이 뜨면 HKEY_CURRENT_USER - Console(새로만들기 키추가후 Tomcat생성) - Tomcat(새로만들기 DWORD추가후 CodePage생성) - 단위:10진수, 값데이터:65001 확인 startup..

supermalta.tistory.com

> 서버 삭제 후 다시 재설치 > cmd 관리자모드에서 8080 사용중인 pid 종료 > 톰캣 재시작 > x

> 톰캣의 기존 설치 위치를 별도로 만든 devtools 폴더에서 programfiles로 바꿔준 뒤 다시 sts 설정변경해줌 > x

> 환경변수 설정 변경해보려다가 webapp 폴더에 test.jsp 만들어서 실행해보니 구동됨 (톰캣실행문제 x )

> 처음 확인했던 오류인 start.bootstrap 을 빌드못해서 생긴 문제 같아서 m2 안에 repository 날리고 sts 재시작

> mavenupdate(force)

** 오류 해결 중 찾아본 블로그에 톰캣 구동 원리가 잘 정리되어 있어서 참고하였음

https://xzio.tistory.com/1373

 

[스프링 오류] 404오류는 web.xml 파일에 답이 있다.(하나씩 찾아보자)

공부하는 책의 테스트 코드를 실행하려고하였다. 코드를 하나씩 넣어서 하고있는 중 코드를 실행하였다. 톰캣 실행 후 실행하려고 하는 jsp 파일을 실행하였다. /WEB-INF/views/main.jsp 파일을 실행하

xzio.tistory.com

> 모든 방법 다 안되서 프로젝트 새로 만들고 이전 프로젝트 설정 그대로 옮김 > 프로젝트 정상 구동 확인

** 다시 web.xml 에 필터 등록 후 데이터 송신 > 한글 데이터 수신 확인

	<!-- encoding fillter 등록 -->	
	<filter>
		<filter-name>encodingFilter</filter-name> <!-- 지정하고 싶은 이름으로 설정 -->
		<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> <!-- 해당 클래스파일로 fillter 객체 생성 -->
		<init-param>
			<param-name>encoding</param-name> <!-- CharacterEncodingFilter 클래스 파일안에 parameter가 encoding인 생성자에 -->
			<param-value>utf-8</param-value> <!-- UTF-8 값 전달 후 객체 생성 -->
		</init-param>
		<init-param>
			<param-name>forceEncoding</param-name> <!-- parameter가 encondig, forceEncoding인 생성자 -->
			<param-value>true</param-value>
		</init-param>
	<filter-mapping>
		<filter-name>encodingFilter</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>

-----------------------------------------------------------------------------------------------------------------------------------------------------------------

- json으로 ajax 비동기통신시 spring controller에서 사용하는 어노테이션 스터디

참고 https://wildeveloperetrain.tistory.com/144

 

@RequestBody @ResponseBody 어노테이션 이해하고 사용하기

클라이언트와 서버의 통신(HTTP) @RequestBody, @ResponseBody Annotation을 이해하기에 앞서, 클라이언트와 서버 간 통신에 대해서 먼저 간단하게만 살펴보겠습니다. HTTP(HyperText Transfer Protocol) 통신이..

wildeveloperetrain.tistory.com

--->>  restAPI의 구조에 대한 설명까지 정말 잘 정리되어 있음 

+ 오늘 restAPI와 어노테이션에 대한 추가 공부 후에 login controller 코드 아래와 같이 수정(작동O)

// 기존 src
	@RequestMapping(value = "/login")
	public String login(@RequestBody MemberVO vo, Model model, HttpServletRequest req) throws Exception {
		service.login(vo);
		model.addAttribute("member", vo);
		HttpSession session = req.getSession();
		session.setAttribute("member", vo);
		
		System.out.println(vo.getId() + " " + vo.getPw());
		
		return "jsonView";
	}
    
// 수정 src
	@ResponseBody 
	@RequestMapping(value = "/login")
	public ModelAndView login(@RequestBody MemberVO member, HttpSession session) throws Exception {
		ModelAndView mav = new ModelAndView("member/login");
		mav.addObject(member);
		
		service.login(member);
		session.setAttribute("member", member);
		
		System.out.println(member.getId() + " " + member.getPw());
		
		return mav;
	}

>> model을 파라미터로 선언할 필요가 없음 (model 삭제)

>> HttpServletRequest 객체를 받지않아도 됨 / session 만 필요하기 때문에 HttpSession 객체만 받아옴

>> 응답시 modelAndView 객체 사용 

'기록' 카테고리의 다른 글

spring프로젝트_0919  (0) 2022.09.19
spring프로젝트_0916  (0) 2022.09.16
spring프로젝트_0914  (0) 2022.09.14
spring프로젝트_0912  (0) 2022.09.12
spring_프로젝트_0910  (0) 2022.09.10