[spring]스프링 부트 MVC구조
·
SPRING
MVC 구조Model: 데이터와 비즈니스 로직을 처리한다. View: 사용자 인터페이스를 제공하여 데이터를 표시한다. Controller: 사용자 요청을 처리하고 모델과 뷰를 연결한다.1. ModelModel은 애플리케이션의 데이터 구조와 비즈니스 로직을 담당한다.package com.board.menus.vo;@Getter@Setter@ToString@NoArgsConstructor@AllArgsConstructorpublic class MenuVo { @NonNull private String menu_id; private String menu_name; private int menu_seq; } MenuVo.java:메뉴 데이터를 담는 VO(Value Object)이다. 메뉴 I..
[spring] 스프링 부트 Controller
·
SPRING
🌿ControllerMVC는 Model-View-Controller의 약자로, 애플리케이션을 세 가지 주요 구성 요소로 나누어 관리하는 디자인 패턴이다.@Controllerpublic class TestController { @RequestMapping("/") public String home() { return "home"; // /WEB-INF/views/ + home + .jsp }}@Controller는 이 클래스가 Spring MVC의 컨트롤러 역할을 한다는 것을 나타내고, @RequestMapping은 웹 애플리케이션에서 특정 URL 요청(HTTP요청)을 메서드와 연결(mapping)한다. 구현: @Controller 어노테이션이 붙은 TestController 클래스의 home..
[spring] Spring Framework에서의 datasource 설정 및 Spring Boot migration
·
SPRING
Java 코드에서 Bean 생성BasicDataSource dataSource = new BasicDataSource();dataSource.setDriverClassName("oracle.jdbc.OracleDriver");dataSource.setUrl("jdbc:oracle:thin:@localhost:1521:xe");dataSource.setUsername("hr");dataSource.setPassword("1234");이렇게 jsp내에서 직접 datasource를 설정하게되면 한 파일안에서 명확하게 드러나지만 코드가 길어지고 복잡해졌을때 가독성이 떨어지고 객체 간의 dependency를 관리하기 어렵다. 마치 요리 식재료들을 펼쳐놓고 요리를 하는 것과 같다. 요리를 할때 빠르게 재료들을 가져..
[jsp]로그인 및 회원가입 페이지 만들기
·
JSP
🌿 loginform.html(로그인 화면) 아이디 암호 회원목록아이디와 비밀번호를 입력 후 login.jsp로 POST 요청을 보내 로그인 절차를 진행한다. 🌿login.jsp(로그인 처리)회원정보"; html+="아이디:"+ rs.getString("userid")+""; html+="이름:"+ rs.getString("username")+""; html+="이메일:"+ rs.getString("email")+""; html+="가입일:"+ rs.getString("rdate")+""; html+="뒤로";}else{ //없는 회원 html+="존재하지 않는 회원입니다."; html+="회원가입"; h..
[spring]Payload,Parameter, Attribute들의 관계
·
SPRING
param, request.getParameter, requestScope, request.getAttribute의 차이용어목적데이터유형접근 방식주용 사용처param파라미터 값 접근(EL)클라이언트 파라미터$(param.name)클라이언트에서 보낸 파라미터 접근request.getParameter파라미터 값 접근클라이언트 파라미터request.getParameter("name")클라이언트에서 보낸 파라미터 접근requestScope속성 값 접근 (EL)서버 측 속성${requestScope.name}서버에서 설정한 속성 접근request.getAttribute속성 값 접근서버 측 속성request.getAttribute("name")서버에서 설정한 속성 접근 1. param (EL Expression)역..
[spring]JSTL(JSP Standard Tag Library)
·
SPRING
jsp는 개발자가 정의한 커스텀 태그들 중 많이 사용하는 것을 모아서 JSTL 이라는 라이브러리에 담아서 사용한다 1. JsTL 라이브러리 종류라이브러리접두사참조 주소역할코어chttp://java.sun.com/jsp/jstl/core변수지원,흐름 제어, URL 처리XMLxhttp://java.sun.com/jsp/jstl/xmlxml 관련처리, xml 흐름제어국제화fmthttp://java.sun.com/jsp/jstl/fmt국제화 처리, 메시지 관리, 국가별 통화처리($, 원화표시, ...)메뉴가 설정에따라 한글, 영어,한자로 표시데이터베이스sqlhttp://java.sun.com/jsp/jstl/sql데이터베이스 접근함수fnhttp://java.sun.com/jsp/jstl/fncollection,..
[spring] EL (Expression Language)
·
SPRING
EL은 java bean의 property이다. jsp는 스크립트의값을 간결하고 편리하게 사용하기 위해 EL을 사용한다. 1.EL표현언어EL 은 $ 와 {} 만 사용하여 값을 표현한다. 이때, {} 안에는 값으로 표현되는 것만  와야한다.  처럼 쓰는대신 아래와 같이 쓸 수 있다.${x}: x 변수의 값을 출력   ${arr[0]} 또는 ${arr['0']}: 배열 arr 안의 0번째 값👉${member.name} 또는 ${member['name']} : member 객체의 getName() 호출한다 👉  2. EL 기본객체(내장객체) 11대기본객체jsp 내장객체와 비교pageContextpageContext  객체pageScopepage 객체 참조requestScoperequest 객체 참조sess..
[jsp]쇼핑몰 회원관리 사이트 만들기
·
JSP
홈쇼핑 고객과 매출관리를 위한 프로그램이다. 회원등록 및 수정∙삭제, 회원 조회, 회원매출조회 업무가 가능하도록 하는 프로그램을 본 포스팅에서 다뤄보겠다.1. 회원 정보와 매출 정보 테이블 생성sql작성CREATE TABLE MEMBER_TBL ( custno number(6) primary key -- 회원번호 숫자(6) 기본키 번호자동증가 , custname varchar2(30) not null -- 회원이름 문자(30) 필수입력 , phone varchar2(20) -- 전화 문자(20) , address varchar2(150) -- 주소 문자(150)..
[jquery] Axios와 Fetch
·
JAVACSCRIPT
// 최상단에 jquery를 추가해주자 1. 정의🐲AJAX (Asynchronous JavaScript and XML) Ajax는 브라우저에서 비동기적으로 서버와 데이터를 주고받기 위해 사용되는 기술이다. Ajax는 주로 XMLHttpRequest 객체를 사용하여 구현하며, XML, JSON, HTML 등의 데이터를 처리할 수 있다. 🐲 Axios Axios는 자바스크립트의 HTTP 클라이언트 라이브러리로, 비동기 HTTP 요청을 더 간편하게 처리할 수 있도록 도와준다. 🐲 Fetch fetch는 자바스크립트의 내장 함수로, 브라우저에서 비동기 HTTP 요청을 보내기 위해 사용된다. 2. 사용법🐲 Ajax참고: [jquery] ajax() [jquery] ajax()ajax()old 문법 $.ajax( ..
[jquery]비동기호출 - $.get()
·
JAVACSCRIPT
🐲기본문법$.get(url, data, success);==$.ajax({url:loc, method:'get', success:function(){}})url (필수): 요청을 보낼 URL을 지정data (선택): 서버에 전송할 데이터. 객체 형태로 전송할 수 있으며, 쿼리 문자열 형식()으로 자동 변환됨.success (선택): 요청이 성공적으로 완료되었을 때 서버에서 반환된 데이터를 받는다. $.get('https://api.example.com/data', { id: 123 }) .done(function(response) { console.log(response); }) .fail(function(jqXHR, textStatus, errorThrown) { console.error('Error:..