스프링부트(44)
-
스프링부트+jsp로 배달사이트 만들기-11 장바구니추가, 삭제
장바구니에 저장할때 세션, 쿠키, db에 저장하는 방법들이 있지만 저는 세션에 저장하는 방법을 사용하겠습니다 Cart를 관리할 CartController와 dto를 생성합니다 @Controller public class CartController { @ResponseBody @PostMapping("/addCart") public Cart addCart(Cart cart) { System.out.println(cart); return null; } } @Getter @Setter @ToString public class Cart { private long foodId; private String foodName; private int foodPrice; private int amount; private ..
2021.12.07 -
스프링부트+jsp로 배달사이트 만들기-10 음식 목록 가져오기
자신이 만든 가게 번호에 맞게 음식 목록을 추가합니다 INSERT INTO BM_FOOD (ID, STORE_ID, FOOD_NAME, FOOD_PRICE, FOOD_DEC, FOOD_IMG, FOOD_THUMB) VALUES (FOOD_ID_SEQ.NEXTVAL, 7, '불고기피자', '11000', '불고기피자 입니다', '\img\none.gif', '\img\none.gif'); INSERT INTO BM_FOOD (ID, STORE_ID, FOOD_NAME, FOOD_PRICE, FOOD_DEC, FOOD_IMG, FOOD_THUMB) VALUES (FOOD_ID_SEQ.NEXTVAL, 7, '포테이토피자', '12000', '포테이토피자 입니다', '\img\none.gif', '\img\no..
2021.12.07 -
스프링부트+jsp로 배달사이트 만들기-09 매장목록, 매장상세
매장목록 페이지 압축을 풀고 해당 위치에 붙여 넣습니다 store-li는 store페이지에서 매장목록을 보여주는 부분인데 따로 분리한 이유는 다른 페이지에서도 비슷하게 사용하기 위해 분리했습니다 Store 패키지를 추가하고 StoreController를 생성합니다 @Controller public class StoreController { @Autowired private StoreService storeService; @GetMapping("/store/{category}/{address1}") public String store(@PathVariable int category, @PathVariable int address1, Model model) { List storeList = storeServ..
2021.12.06 -
스프링부트+jsp로 배달사이트 만들기-08 스프링 시큐리티로 로그인
loginProcessingUrl("/login")에서 설정한 주소로 요청을 하게되면 스프링 시큐리티가 form태그의 input태그의 name을 가로채서 로그인을 처리하게되는데 input name을 기본적으론 아이디는 username 비밀번호는 password로 정해줘야합니다 스프링시큐리티는 로그인 성공시 UserDetails 타입의 세션을 생성합니다 db에서 유저정보를 받을 User 클래스와 유저정보를 같이 세션에 올리기 위해 UserDetails를 상속받은 LoginService클래스를 생성합니다 User @Getter @Setter @ToString public class User { private long id; private String username; private String passwor..
2021.12.06 -
스프링부트+jsp로 배달사이트 만들기-07 회원가입 03 비밀번호 암호화하기
비밀번호를 평문으로 저장했을시 서버가 해킹당하면 비밀번호가 그대로 유출될수 있습니다 spring-security의 PasswordEncoder를 사용하면 쉽게 비밀번호를 암호화 할 수 있습니다 org.springframework.boot spring-boot-starter-security pom.xml에 추가후 실행해보면 스프링시큐리티 기본 페이지가 보입니다 커스텀 로그인페이지를 사용하기 위해 설정파일을 추가합니다 @EnableWebSecurity @Configuration public class SecurityConfig extends WebSecurityConfigurerAdapter { @Bean public BCryptPasswordEncoder encodePwd() { return new BCr..
2021.12.06 -
스프링부트+jsp로 배달사이트 만들기0 - 오라클 테이블생성 하기
CREATE TABLE BM_USER ( ID NUMBER PRIMARY KEY, USERNAME VARCHAR2(100) NOT NULL, PASSWORD VARCHAR2(100) NOT NULL, EMAIL VARCHAR2(50) , NICKNAME VARCHAR2(50), POINT NUMBER DEFAULT 0, PHONE VARCHAR2(20) , RATING VARCHAR2(50) DEFAULT 0, ROLE VARCHAR2(20) DEFAULT 'ROLE_USER' ); -- 유저 번호 자동증가 CREATE SEQUENCE USER_ID_SEQ INCREMENT BY 1 START WITH 1 MINVALUE 1 MAXVALUE 99999999999 NOCYCLE NOCACHE NOORDER..
2021.12.05 -
스프링부트+jsp로 배달사이트 만들기-06 회원가입 02 MYBATIS 사용하기
데이터베이스 연결을 위해 라이브러리를 추가합니다 org.mybatis.spring.boot mybatis-spring-boot-starter 2.1.4 com.oracle.database.jdbc ojdbc8 runtime application.properties에 설정을 추가합니다 spring.datasource.driver-class-name=oracle.jdbc.driver.OracleDriver spring.datasource.url=jdbc:oracle:thin:@localhost:1521 spring.datasource.username=SUMIN spring.datasource.password=QWE123 mybatis.configuration.map-underscore-to-camel-cas..
2021.12.05 -
스프링부트+jsp로 배달사이트 만들기-05 회원가입 01
UserController에 회원가입 페이지를 추가합니다 @GetMapping("/join") public String join() { return "user/join"; } 회원가입을 할 페이지 join.jsp를 user폴더에 붙여넣습니다 join.jsp ${errorMsg.username } ${errorMsg.password } ${errorMsg.email } ${errorMsg.nickname } ${errorMsg.phone } form 태그안 input태그의 값을 서버로 name으로 준 키(username)로 전달합니다 데이터를 받을 코드를 Usercontroller에 추가합니다 @PostMapping("/join") public String joinProc(Join join) { Syste..
2021.12.04 -
스프링부트+jsp로 배달사이트 만들기-04 mypage, 로그인페이지 만들기
아래 코드를 해당 위치에 붙여넣기합니다 UserController @Controller public class UserController { @GetMapping("/myPage") public String myPage() { return "user/myPage"; } @GetMapping("/login") public String login() { return "user/login"; } } myPage.css section.title { width: 100%; } section.title h1 { text-align: center; margin : 30px 0 30px 0 ; } /* 콘텐츠 */ main { /* min-height: 390px; */ } main .container { max-wi..
2021.12.04 -
스프링부트+jsp로 배달사이트 만들기-03 메인페이지 만들기2(쿠키,세션으로 주소저장)
매장 목록을 보려고하면 주소를 입력해야 볼수있게했습니다 주소를 입력할수 있게 다음 주소 api를 사용합니다 다음 주소api는 무료로 복붙만 해도 바로 사용할수있습니다 https://postcode.map.daum.net/guide Daum 우편번호 서비스 우편번호 검색과 도로명 주소 입력 기능을 너무 간단하게 적용할 수 있는 방법. Daum 우편번호 서비스를 이용해보세요. 어느 사이트에서나 무료로 제약없이 사용 가능하답니다. postcode.map.daum.net 해당 사이트의 코드를 약간 수정하고 다른페이지에서 재활용하기 위해 modifyAddress.jsp파일로 저장하고 include합니다 이 코드를 추가했는데 /addresModify로 주소를 보내고 주소를 세션과 쿠키에 저장합니다 // 추가 con..
2021.12.04