시작하기 전에, 한글을 intellij에서 한 번이상이라도 사용한다면 인코딩 방법을 UTF-8로 바꿔둬야 한다. 자세한 방법은 구글링을 참조했다.
1. 기본적인 출력
package com.day1.week01.prac;
public class Prac {
public static void main(String[] args) {
System.out.println("안녕, 고양이!");
}
}
시작하기 전에, 한글을 intellij에서 한 번이상이라도 사용한다면 인코딩 방법을 UTF-8로 바꿔둬야 한다. 자세한 방법은 구글링을 참조했다.
2. 변수 출력
package com.day1.week01.prac;
import java.sql.SQLOutput;
public class Prac {
public static void main(String[] args) {
int a=10;
int b=3;
System.out.println(a+b);
float c= 3.7f;
System.out.println(a+c);
Long d=1000000000L;
System.out.println(a+d);
}
}
3. 문자열 출력
package com.day1.week01.prac;
import java.sql.SQLOutput;
public class Prac {
public static void main(String[] args) {
String myName="Ritsu";
String myName2="Sena";
String myName3="Reo";
System.out.println(myName);
System.out.println(myName+myName2);
System.out.println(myName+" "+myName2);
System.out.println(myName2+myName3);
}
}
4. boolean (참, 거짓 연산)
package com.day1.week01.prac;
import java.sql.SQLOutput;
public class Prac {
public static void main(String[] args) {
int myAge=20;
boolean isAdult=myAge>20;
boolean isKid=myAge<=20;
System.out.println(isAdult);
System.out.println(isKid);
boolean isTest=false;
System.out.println(myAge==20); //true
System.out.println(myAge!=20); //false
}
}
5. List
package com.day1.week01.prac;
import java.sql.SQLOutput;
import java.util.List;
import java.util.ArrayList;
public class Prac {
public static void main(String[] args) {
List<String> myList = new ArrayList<>();
String course1="봄은 spring";
String course2="여름은 summer";
myList.add(course1);
myList.add(course2);
System.out.println(myList);
System.out.println(myList.get(1));
myList.remove(1);
System.out.println(myList);
}
}
package com.day1.week01.prac;
import java.sql.SQLOutput;
import java.util.List;
import java.util.ArrayList;
public class Prac {
public static void main(String[] args) {
List<String> courseList = new ArrayList<>();
String course1="웹개발";
String course2="앱개발";
courseList.add(course1);
courseList.add(course2);
System.out.println(courseList);
System.out.println(courseList.get(1));
// courseList.remove(1);
System.out.println(courseList);
}
}
6. 메소드(c언어에서의 함수와 같은 기능)
main함수 안에서 메소드를 써주기 위해서는 public 다음에 static을 붙여줘야 한다.
package com.day1.week01.prac;
import java.sql.SQLOutput;
import java.util.List;
import java.util.ArrayList;
public class Prac {
// 파라미터 X, 반환값 X
public static void simplePrint() {
System.out.println("파라미터도 없고, 반환값도 없어요!");
}
// 파라미터 O, 반환값 X
public static void simpleSum(int num1, int num2) {
System.out.println("num1 :" + num1 + ", num2: " + num2);
}
// 파라미터 X, 반환값 O
public static int simpleReturn() {
return 3;
}
// 파라미터 O, 반환값 O
public static int sum(int num1, int num2) {
return num1 + num2;
}
public static void main(String[] args) {
System.out.println(sum(3,5));
simpleSum(4,3);
simplePrint();
}
}
7. 반복문
package com.day1.week01.prac;
import java.sql.SQLOutput;
import java.util.List;
import java.util.ArrayList;
public class Prac {
public static void main(String[] args) {
List<String> fruits = new ArrayList<>();
fruits.add("감");
fruits.add("배");
fruits.add("감");
fruits.add("딸기");
fruits.add("수박");
fruits.add("메론");
fruits.add("수박");
fruits.add("딸기");
fruits.add("메론");
fruits.add("수박");
fruits.add("메론");
fruits.add("수박");
fruits.add("감");
System.out.println(fruits);
for (int i=0; i<fruits.size(); i++) {
System.out.println(fruits.get(i));
}
// 매번 13개, 14개, 12개.. 개수 세어줘야 할까요?
}
}
8. 조건문
package com.day1.week01.prac;
import java.sql.SQLOutput;
import java.util.List;
import java.util.ArrayList;
public class Prac {
public static void main(String[] args) {
int age = 20;
if (age > 19) {
System.out.println("성인입니다.");
} else {
System.out.println("미성년자입니다.");
}
// 매번 13개, 14개, 12개.. 개수 세어줘야 할까요?
}
}
9. 과일 갯수 세기
package com.day1.week01.prac;
import java.sql.SQLOutput;
import java.util.List;
import java.util.ArrayList;
public class Prac {
public static int countFruit(String fruit) {
List<String> fruits = new ArrayList<>();
fruits.add("감");
fruits.add("배");
fruits.add("감");
fruits.add("딸기");
fruits.add("수박");
fruits.add("메론");
fruits.add("수박");
fruits.add("딸기");
fruits.add("메론");
fruits.add("수박");
fruits.add("메론");
fruits.add("수박");
fruits.add("감");
int count=0;
for(int i=0;i<fruits.size();i++){
String f=fruits.get(i);
if(f==fruit){
count++;}
}
return count;
}
public static void main(String[] args) {
int gam=countFruit("감");
int subak=countFruit("수박");
System.out.println(subak);
System.out.println(gam);
}
}
10. 클래스
Course.java
package com.day1.week01.prac;
public class Course {
public String title;
public String tutor;
public int days;
}
Prac.java(main 함수가 있는 곳)
package com.day1.week01.prac;
import java.sql.SQLOutput;
import java.util.List;
import java.util.ArrayList;
public class Prac {
public static void main(String[] args) {
Course course = new Course();
course.title = "Rtiz";
course.tutor="Ritsu";
System.out.println(course.title);
System.out.println(course.tutor);
Course course2=new Course();
course2.title="Rtiz love";
course2.tutor="Sena";
System.out.println(course2.title);
System.out.println(course2.tutor);
}
}
11. 생성자
클래스 명과 똑같은 이름을 가진 메소드
Course.java
package com.day1.week01.prac;
public class Course {
// title, tutor, days 가 Course 라는 맥락 아래에서 의도가 분명히 드러나죠!
public String title;
public String tutor;
public int days;
public Course() {
//생성자는 리턴이 없다. 괄호안에 아무것도 없는 것이 기본 생성자이다.
}
public Course(String title,String tutor, int days){
this.title=title;
this.tutor=tutor;
this.days=days;
}
}
Prac.java(main 함수가 있는 곳)
package com.day1.week01.prac;
import java.sql.SQLOutput;
import java.util.List;
import java.util.ArrayList;
public class Prac {
public static void main(String[] args) {
// Course course = new Course();
// course.title = "Rtiz";
//course.tutor="Ritsu";
int days=35;
String title="Rtiz";
String tutor="Ritsu";
Course course=new Course(title,tutor,35);
System.out.println(course.title);
System.out.println(course.tutor);
System.out.println(course.days);
int days1=20;
String title1="Rtiz love";
String tutor1="Sena";
// Course course2=new Course();
//course2.title="Rtiz love";
//course2.tutor="Sena";
Course course2=new Course(title1,tutor1,days1);
System.out.println(course2.title);
System.out.println(course2.tutor);
System.out.println(course2.days);
}
}
12. Getter, Setter
*Course.java
package com.day1.week01.prac;
public class Course {
// title, tutor, days 가 Course 라는 맥락 아래에서 의도가 분명히 드러나죠!
public String title;
public String tutor;
public int days;
public Course() {
//생성자는 리턴이 없다. 괄호안에 아무것도 없는 것이 기본 생성자이다.
}
public Course(String title,String tutor, int days){
this.title=title;
this.tutor=tutor;
this.days=days;
}
//Setter: 정보를 바꾸는 메소드
public void setTitle(String title){
this.title=title;
}
public void setTutor(String tutor){
this.tutor=tutor;
}
public void setDays(int days){
this.days=days;
}
//Getter: 정보를 가져오는 메소드
public String getTitle(){
return this.title;
}
public String getTutor(){
return this.tutor;
}
public int getDays(){
return this.days;
}
}
*Prac.java(Main 함수가 있는 곳)
package com.day1.week01.prac;
import java.sql.SQLOutput;
import java.util.List;
import java.util.ArrayList;
public class Prac {
public static void main(String[] args) {
// course.title = "Rtiz";
//course.tutor="Ritsu";
int days=35;
String title="Rtiz";
String tutor="Ritsu";
Course course=new Course();
course.setTitle(title);
course.setTutor(tutor);
course.setDays(days);
System.out.println(course.getTitle());
System.out.println(course.getTutor());
System.out.println(course.getDays());
int days1=20;
String title1="Rtiz love";
String tutor1="Sena";
// Course course2=new Course();
//course2.title="Rtiz love";
//course2.tutor="Sena";
Course course2=new Course(title1,tutor1,days1);
System.out.println(course2.title);
System.out.println(course2.tutor);
System.out.println(course2.days);
}
}
*Tutor.java
package com.day1.week01.prac;
public class Tutor {
private String name;
public int bio;
//퍼블릭으로 생성
public Tutor() {
//기본 생성자
}
public Tutor(String name, int bio){
this.name=name;
this.bio=bio;
}
//Setter
public void setName(String name) {
this.name = name;
}
public void setBio(int bio) {
this.bio = bio;
}
//Getter
public String getName(){
return this.name;
}
public int getBio(){
return this.bio;
}
}
13. 브라우저에 나타내보기
Rest: 서버의 응답이 JSON 데이터 구조임을 나타내는 것
HTML, CSS등을 주고 받을 때에는 Rest를 사용하지 않는다.
Controller: 자동 응답기 기능. 클라이언트의 요청을 전달받는 코드
intellj에 controller 패키지 추가
CourseController.java 추가
package com.day1.week01.controller;
import com.day1.week01.prac.Course;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class CourseController {
@GetMapping("/courses")
public Course getCourses() {
Course course = new Course();
course.setTitle("Rtiz");
course.setDays(922);
course.setTutor("Sakuma Ritsu&SenaIzumi");
return course;
}
}
14. Person 클래스 새로 생성
*PersonController.java
package com.example.demo.controller;
import com.example.demo.prac.Person;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class PersonController {
@GetMapping("/myinfo")
public Person getPersons(){
Person person=new Person();
person.setName("YuDay");
person.setAge(23);
person.setAddress("Daegu-Dalseogu");
return person;
}
}
*Person.java
package com.example.demo.prac;
public class Person {
private String name;
private int age;
private String address;
public Person(){
//기본 생성자
}
public Person(String name, int age, String address){
this.name=name;
this.age=age;
this.address=address;
}
//Getter
public String getName(){
return this.name;
}
public String getAddress(){
return this.address;
}
public int getAge(){
return this.age;
}
//Setter
public void setName(String name){
this.name=name;
}
public void setAddress(String address){
this.address=address;
}
public void setAge(int age){
this.age=age;
}
}
'스프링' 카테고리의 다른 글
Web server failed to start. Port 8080 was already in use. (0) | 2022.05.16 |
---|---|
5주차-완성: 익명 타임라인 페이지 (0) | 2021.08.03 |
4주차 (0) | 2021.07.31 |
스프링 3주차 (0) | 2021.07.20 |
2주차- API (0) | 2021.07.13 |
댓글