본문 바로가기

Java17

Java 타입 Java ▶Java 언어는 바이트 코드를 가지는 언어로, 개발자가 작성한 코드가 바이트 코드로 컴파일 (엄밀히 얘기하면 컴파일은 아님)되어, 커널(Kernel)이 이를 직접 분석하지 않고, JVM(Java Virtual Machine)으로 하여금 해당 바이트 코드를 분석, 결과를 커널에 전달해주는 방식을 채택하고 있다. ▶이러한 점 때문에, 각 운영체제에 맞는 JVM이 존재한다면 하나의 코드로 운영체제와 문과하게 개발 및 실행할 수 있다. ​ JRE ▶ JRE(Jva Runtime Envirnment)는 자바로 작성된 프로그램을 실행하기 위해 필요한 구성요소의 집합이다. ▶ 'JRE를 설치한다'라고 하면 'JVM을 구축했다'라고 받아들여도 상관없다. ​ JDK ▶ JDK(Java Development K.. 2023. 9. 22.
어노테이션 ▶ @Autowired (메서드) : 해당 메서드가 가지는 매개변수를 스프링이 객체화해야 함을 알린다.(의존성 주입, DI, Dependency Injection) ▶ @Controller (클래스) : 해당 클래스가 컨트롤러임을 알린다. ▷ value : 컨트롤러를 식별할 수 있는 식별자를 지정한다. ▶ @Mapper(인터페이스) : 해당 인ㅌ터페이스가 MyBatis Mapper 인터페이스임을 알린다 ▶@ResponsBody (메서드) : 해당 메서드의 실행 결과에 대해 HTML 엔진으로 분석하는 것이 아닌 return 값 자체가 응답(Response) 값으로 반환되어야 함을 알린다. ▶ @RequestParam (클래스, 메서드) : 연결될 주소 맵핑을 지정한다. 해당 어노테이션이 클래스에 부여되어 .. 2023. 9. 22.
MVC ▶MVC 는 Model-View-Controller 의 줄임말로 웹 개발 및 프로그램 개발시에 사용하는 일종의 패턴이다. ▶ 원활한 협업 및 향후의 유지관리, 보수를 위해 MVC 패턴을 지키면서 개발을 하는 것이 중요하다. Model ​ Service ▶ Mapper (DAO, Data Access Object) ▶ View ▶View는 사용자에게 보여질 화면을 구현하는 부분이다. 주로 동적인 HTML 표시를 위해 많이 사용한다. ▶스프링 부트에서 View를 처리하기 위한 엔진의 종류가 많은데 대표적인 예는 아래와 같다. ▷JSP ▷Thymeleaf ▷Groovy ▷FreeMaker ​ Controller ▶ MVC 패턴에서 실질적으로 사용자의 요청을 받아 응답을 돌려주는 역할을 한다. ▶ 요청을 받을 .. 2023. 9. 22.
프로젝트 생성 프로젝트 생성 다음 누르고 ​ Spring Boot : 2.7.10 종속성 Developer Tools -> Spring Boot DevTools Web -> Spring Web Template Engines -> Thymeleaf 실행버튼 눌렀을때 오류뜨면 application.properties 가서 서버포트 입력해주기. 브라우저에 http://localhost:6795/hello.html 접속하면 hello 뜰거임 ​ 왼쪽파일의 static / (hello.html) 주소생성되는 경로 ​ 포트경로 적어주고 밑에 DBMS 연결해주기 spring.datasource.driver-class-name=org.mariadb.jdbc.Driver spring.datasource.url=jdbc:mariadb:.. 2023. 9. 22.
[SpringBoot] Httpsession HttpSession 객체를 사용하여 "user"라는 이름으로 유저 정보를 세션에 저장하는 예시 @Controller public class MyController { @RequestMapping(value = "login", method = RequestMethod.POST) public String login(HttpSession session, UserEntity user) { // 로그인 로직 수행 // ... // 로그인이 성공한 경우 세션에 "user" 속성으로 유저 정보 저장 session.setAttribute("user", user); return "redirect:/home"; } } 위의 예시에서 /login 경로로 POST 요청이 들어오면 로그인 로직을 수행하고, 로그인이 성공한 경.. 2023. 7. 6.
[SpringBoot] Html 자체 폼 전달 -> Controller / 검색기능구현 action 속성이 없는 Html 폼은 현재 페이지에 대한 요청을 보낸다. 이 경우, 폼 데이터는 현재 페이지 URL의 일부로서 쿼리 매개변수로 전달된다. 따라서 `method="get" 을 사용하여 html 폼을 제출하고 폼 데이터를 쿼리 매개변수로 전송할 수 있다. `action` 속성이 없으면, 폼 데이터는 현재 페이지로 전송된다. 따라서, html 코드에서 `action` 속성이 없어도 폼 데이터는 현재 페이지로 전송되며, 컨트롤러의 경로에 대한 요청으로 처리된다 //...생략 위의 코드에서 `method="get"` 을 사용하면 폼 데이터가 HTTP GET 방식으로 전송되며, 폼이 속한 현재 페이지로 전송된다. 컨트롤러에서는 @RequestParam 어노테이션을 사용하여 URL 매개변수를 받을 .. 2023. 6. 28.
[SpringBoot] 회원가입 insert html 에서 form과 input으로 뼈대 만들기 이메일 계정이 있으신가? 로그인 자바스크립트로 연결되는지 확인하기 const btnElements = document.getElementById('Btn') btnElements.addEventListener('click', function() { alert('클릭'); }); alert 확인되면 자바스립트로 백연결 시작하기 registerForm.onsubmit = e => { e.preventDefault(); const xhr = new XMLHttpRequest(); const formData = new FormData(); formData.append('email', registerForm['email'].value); xhr.open('POS.. 2023. 6. 20.
[Java] 객체지향언어 / 클래스, 객체, 인스턴스, 참조변수, 메서드 객체지향언어란 1. 코드의 재사용성이 높다. (새로운 코드를 작성할 때 기존의 코드를 이용하여 쉽게 작성할 수 있다.) 2. 코드의 관리가 용이하다. (코드간의 관계를 이용해서 적은 노력으로 쉽게 코드를 변경할 수 있다.) 3. 신뢰성이 높은 프로그래밍을 가능하게 한다. (제어자와 메서드를 이용해서 데이터를 보호하고 올바른 값을 유지하도록 하며, 코드의 중복을 제거하여 코드의 불일치로 인한 오동작을 방지할 수 있다.) 클래스와 객체 1. 클래스란 - '객체를 정의해놓은 것' , '객체의 설계도 또는 틀' => 클래스는 객체를 생성하는데 사용되며, 객체는 클래스에 정의된 대로 생성된다. ex) 제품 설계도와 제품의 관계 클래스 객체 제품 설계도 제품 TV 설계도 TV 붕어빵 기계 붕어빵 - 클래스를 정의하.. 2023. 6. 11.
728x90