본문 바로가기

mybatis 다중 insert INSERT INTO테이블명(컬럼1, 컬럼2, 컬럼3)VALUES(?, ?, ?),(?, ?, ?),...와 같은 방식의 INSERT. 123456789@Transactional@Overridepublic void insert(List filelist) { if(filelist != null || filelist.size() != 0) { for(FileVO file : filelist) { mapper.uploadFiles(file); }}Colored by Color Scriptercs 위와 같이 리스트를 순회하면서 단일객체마다 반복해 insert 처리해도 되지만아래와 같이 XML에서 foreach 구문으로 쿼리 한번에 처리할 수도 있다. 123456789 INSERT INTO files (id, f..
IP 가져오기 public class GetIP { private static final String[] IP_HEADER_CANDIDATES = { "X-Forwarded-For", "Proxy-Client-IP", "WL-Proxy-Client-IP", "HTTP_X_FORWARDED_FOR", "HTTP_X_FORWARDED", "HTTP_X_CLUSTER_CLIENT_IP", "HTTP_CLIENT_IP", "HTTP_FORWARDED_FOR", "HTTP_FORWARDED", "HTTP_VIA", "REMOTE_ADDR" }; public static String getClientIpAddress(HttpServletRequest request) { for (String header : IP_HEADER_CA..
spring mvc 단위테스트 spring 3.2 부터 사용가능한 mockMvc이 활용된 단위테스트입니다.간단한 로그인으로 가정합니다. html아이디와 비밀번호를 넣고 로그인하는 화면입니다. Colored by Color Scriptercscontroller일치하는 정보 없으면 / 로 넘기고 있으면 다음 페이지로 넘어가게만 처리했습니다. @Controller@RequestMapping("/user/*")public class UserController { @Autowired private UserService service; @PostMapping("/login") public String login( @RequestParam("userId") String userId, @RequestParam("userPw") String user..
SHA-256 예제 import java.security.MessageDigest; public class CommonUtils { public static String SHA256Encoder(String password) { try{ MessageDigest digest = MessageDigest.getInstance("SHA-256"); byte[] hash = digest.digest(password.getBytes("UTF-8")); StringBuffer hexString = new StringBuffer(); for (int i = 0; i
Grid 라이브러리-Datatables 사용법/예제 최근 사용하게 된 datatables 라이브러리에 대한 약간의 설명을 공유하고자 합니다.datatables는 데이터 그리드를 다루는 라이브러리로 '이 기능이 있었으면' 하는 부분은 거의 갖추고 있습니다. 한글로 된 자료는 거의 기본옵션에 대한 설명밖에 없어 고생했는데(ㅠㅠ), 실제 구현했던 기능들 위주로 설명할 예정입니다. Datatables 는 MIT 라이센스로 무료입니다. DEMO : https://saintsilver.github.io/datatables-ex/ 기본 사용음.. 이건 그냥 스크린샷으로 대체합니다.공식홈페이지에 들어가시면 메인페이지에 등장합니다. 윗 스크린샷에서 설명이 생략된 #myTable 은 아래와 같은 구조로 만드시면 되고, 서버사이드로 데이터를 처리하여 데이터테이블을 만들 시 ..
custom radio button 아래처럼 가로로 된 radio button을 쓸 일이 있어서 저장용. 본래의 라디오버튼은 left -9999px로 숨겨버리고, 라디오버튼과 연결된 label을 사용합니다.label의 for 속성을 빼먹으면 작동하지 않으니 주의합니다.
java - 파일에서 확장자만, 파일명만 구하기? 검색해보니 아래와 같은 방법이 많이 포스팅되어 있던데 int pos = strFileName.lastIndexOf( "." );String ext = strFileName.substring( pos + 1 );cs 대신에 org.apache.commons.io.FilenameUtils 의 getExtension() 메서드를 쓸 수 있습니다. 파일명이 test.png 라면 "png" 가 리턴되고 "a/b/c.png" 의 경우에도 png만 리턴합니다. String extension = FilenameUtils.getExtension(uploadfile.getOriginalFilename());cs 반대로 확장자를 제외한 파일명만 구하는 경우도 아래와 같은 글이 많은데 String fileName = file..
한개의 Form에서 여러개 Submit 사용하기 Multiple submit in Single Form한개의 태그에서 에서 여러개의 submit 버튼을 사용할 경우가 있습니다.무엇이 가장 우아한 방법일까요?onclick - 1아마 아래와 같은 코드를 많이 보셨을 겁니다. $("#update").click(function () { $("form").attr("action", "/manage/update");}); $("#delete").click(function () { $("form").attr("action", "/manage/delete");});Colored by Color Scriptercs 혹은 아래와 같이 submit 버튼에 onclick 시 name 등을 함께 넘겨 switch 처리로 action 부분만 변경한다던지 하는 코드를요. fun..