Program/Java
[Java] 세션(Session) 의 정의와 활용 예 1. 세션(session) 이란? + 쿠키 (Cookie) 세션 - 웹 서버 쪽의 웹 컨테이너에 상태를 유지하기 위한 정보를 저장한다.쿠키 - 웹 브라우저에 사용자의 상태를 유지하기 위한 정보를 저장 세션은 정보를 유지를 위해 javax.servlet.http의 HttpSession 인터페이스를 구현해서 사용 쿠키는 정보를 웹 브라우저에 저장해서 웹 서버가 쿠키 정보를 읽어서 사용한다.이것은 웹 브라우저에 저장된 쿠키는 웹 서버에서 열어볼 수 있다는 점에서 보안상 문제가 발생할 수 있다. 고로 세션을 사용 하는 방법이 보안에는 안정적이다. 2. 세션(Session) 메소드 들 메소드 이름리턴 타입 설명 getAttribute(String name) j..
[Java] SSO & Crowd 설정 시 httpclient 관련 에러 해결 타 서버에서 세션 정보를 받아오는경우가 필요할때 SSO & Crowd 를 많이 사용한다 이때 꼭 들어가는게 httpclient 인데 생각보다 잊고있는경우가 많다. 아무리 클래스 패스에서 설정을 해준다해도 java.lang.NoClassDefFoundError: Could not initialize class org.apache.commons.httpclient.HttpClient java.lang.NoClassDefFoundError: Could not initialize class org.apache.commons.httpclient.Entity 와 같은 오류가 발생 할 수도 있다. 설정문제인데.. 이를 이클립스에 클래스패스..
[Spring] Spring/MyBatis/Oracle 연동 / 설정 앞글 https://rios.tistory.com/280 에서 Mybatis 설명 및 Spring / Mysql 연동 방법을설명했으니 이번엔 oracle 버전으로 알아보도록하자. 사실 앞글에선 이론 및 mybatis 등을 설명하느라 글이 좀길어졌는데간단하게 표현하면 설정파일 3개를 수정 ( root-context.xml , pom.xml , web.xml ) ▼root-context.xml 설정 1234567891011121314151617181920212223242526272829303132333435 Colored by Color Scriptercs ▼pom.xml 설정 1234567891011121314151617181920212..
MyBatis?MyBatis는 SQL 맵퍼 라이브러리이며. JDBC 작업을 하다보면 중복코드가 발생하게 되는데 예를 들어 try-catch-finally 를 이용하여 처리에서부터 PrepareStatement와 ResultSet의 데이터를 처리하기까지 많은코드를 직접 작성하게됩니다. 반면 MyBatis는 이러한 코드를 상당히 줄여줘서 개발 속도를 향상 시키며 스프링과 MyBatis를 결합하면 코드 제작없이도 JDBC 처리가 가능하게 됩니다.MyBatis 특징SQL문의 분리운영Spring과 연동으로 자동화된 처리동적 SQL을 이용한 제어 가능 ▼root-context.xml 파일 설정 Spring 프로젝트에서 root-context.xml 파일은 가장 중요한 파일입니다.웹과 관련된 설정은 appServle..
[Java] Collection - Iterator 란? ▼비유책장 ( 컬렉션)이 있을때 그곳에는 책(컬렉션에 들어갈 객체) 가 있다. 이책장은 사서(이터레이터) 가 관리를하게되지만사서는 책장 처음부터 끝까지 하나밖에 가져오지못함. ▼방법hasNext() : 다음에 읽어 올 값이 있는 확인 있으면 True 없으면 false 를 반환next() : 다음값을 가지고옴remove() : next()로 읽어 온 값을 삭제함 ▼예제1234567891011121314151617181920212223public static void main(String[] args) { List list= new ArrayList(); list.add("1"); list.add("2"); list.add("3"); list.add(..
[Java] String을 Json 객체로 변경하는법 데이터를 받아 사용할때 데이터를 String으로 받아오는 경우가있다. Stirng을 Json으로 변경하는 법을 알아보도록하자. 주석으로 내용을 담아 두긴하였으나 순서는 꼭 기억하도록하자. jsonStr에 String 문자로 담아놓고 다시 JSONObject에 담기 위해 파싱을 진행한다음.. 파싱한 obj를 JSONObject 객체에 담아 사용!. ▼ Json 객체 변경 예제 1234567891011121314151617181920212223// 스트링으로 선언된 JsonString jsonStr = "{ num:'1'," + "name :'리오'," + "age :'100'}"; //JSON Parse 선언JSONParser parser = new J..
[Java] HashMap 정리 ▼ HashMap HashMap은 Map을 구현한다. Key와 value를 묶어 하나의 entry로 저장한다는 특징을 갖는다. 그리고 hashing을 사용하기 때문에 많은양의 데이터를 검색하는데 뛰어난 성능을 보인다. Map 인터페이스의 한 종류로 ( "Key", value) 로 이뤄져 있다.key 값을 중복이 불가능 하고 value는 중복이 가능. value에 null값도 사용 가능하다.멀티쓰레드에서 동시에 HashMap을 건드려 Key - value값을 사용하면 문제가 될 수 있다. 멀티쓰레드에서는 HashTable을 쓴다 ▼ HashMap 생성자/ 메서드 생성자 / 메서드설명 HashMap()- HashMap 객체를 생성ex) HashMap map = new Hash..
[Java] 문자열 바이트로 자르기 보통 문자열 자르기 사용시에 영문 같은 경우는 문제가 되지않으나 한글 같은 경우에 종종 바이트 수 문제가 발생 할 경우가 있다. 필자같은 경우 SMS 보내기를 진행하였을때 SMS의 바이트 수제한을 주기위해 글자수로만 인식하던 방법을 다음과 같은 바이트수로 계산하여 사용하였다. ▼바이트수 자르기 코드 예)12345678910111213141516171819202122232425262728293031323334public String getString(String str, int sPoint, int length) throws Exception{ String EncodingLang = "euc-kr"; byte[] bytes = str.getBytes("euc-kr"); ..
[JAVA] 배열 선언 및 랜덤 함수 활용 Stirng 배열 선언 방법 및 랜덤 함수 이용법 소개 ▼배열 선언 및 랜덤 함수 활용 예제 12345678910111213141516 public static void Main{ String[] array_color = ['컬러1','컬러2','컬러3','컬러4','컬러5']; double random= Math.floor(Math.random()*(array_text.length-1)); System.out.println(array_color [random]); //랜덤으로 컬러 1~5 사이로 나옴 } Colored by Color Scriptercs