1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
//context.xml
<beans:bean id="loginCheckInterceptor" class="패키지.LoginCheckInterceptor"/>
    <interceptors>
        <interceptor>
            <mapping path="/**"/>
            <beans:ref bean="loginCheckInterceptor"/>            
        </interceptor>
    </interceptors>
 
//인터셉터.java
package 패키지.interceptor;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.ModelAndViewDefiningException;
import org.springframework.web.servlet.handler.HandlerInterceptorAdapter;
public class LoginCheckInterceptor extends HandlerInterceptorAdapter {
    protected static final Log logger = LogFactory.getLog(LoginCheckInterceptor.class);
    
    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws java.lang.Exception{
        HttpSession session=request.getSession(true);
        
        if(session.getAttribute("SESS_USER")==null){
            response.sendRedirect("메인");
            return false;
        }
        
        return true;
    }
    public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws java.lang.Exception{
        
        super.postHandle(request, response, handler, modelAndView);
    }
    
    public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws java.lang.Exception{
        
        super.afterCompletion(request, response, handler, ex);
    }
    
}
 
cs


'DEV > Spring&Java' 카테고리의 다른 글

Spring logback 설정  (0) 2018.10.10
Spring Iterator  (0) 2018.10.05
SHA256 암호화 키  (0) 2018.10.05
Spring Jxls 엑셀다운로드  (0) 2018.10.05
Javascript에서 ajax 많은데이터 넘길때  (0) 2018.10.05
package 패키지.encrypt;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.util.Random;
public class SHA256Util {
public static String getEncrypt(String source, String salt) {
return getEncrypt(source, salt.getBytes());
}
public static String getEncrypt(String source, byte[] salt) {
String result = "";
byte[] a = source.getBytes();
byte[] bytes = new byte[a.length + salt.length];
System.arraycopy(a, 0, bytes, 0, a.length);
System.arraycopy(salt, 0, bytes, a.length, salt.length);
try {
MessageDigest md = MessageDigest.getInstance("SHA-256");
md.update(bytes);
byte[] byteData = md.digest();
StringBuffer sb = new StringBuffer();
for (int i = 0; i < byteData.length; i++) {
sb.append(Integer.toString((byteData[i] & 0xFF) + 256, 16).substring(1));
}
result = sb.toString();
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
}
return result;
}
public static String generateSalt() {
Random random = new Random();
byte[] salt = new byte[8];
random.nextBytes(salt);
StringBuffer sb = new StringBuffer();
for (int i = 0; i < salt.length; i++) {
sb.append(String.format("%02x",salt[i]));
}
return sb.toString();
}
}

--암호화생성부분--
String salt=SHA256Util.generateSalt();
String newPw=SHA256Util.getEncrypt("password", salt);
salt+newPw 저장
비교시에
newPw.equals(SHA256Util.getEncrypt(입력Pw, salt))


'DEV > Spring&Java' 카테고리의 다른 글

Spring Iterator  (0) 2018.10.05
Spring 인터셉터 Intercepter  (0) 2018.10.05
Spring Jxls 엑셀다운로드  (0) 2018.10.05
Javascript에서 ajax 많은데이터 넘길때  (0) 2018.10.05
Spring ajax통신  (0) 2018.10.05
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
--pom.xml 디펜던시 추가--
<!-- 액셀 jxls-->
        <dependency>
            <groupId>org.jxls</groupId>
            <artifactId>jxls</artifactId>
            <version>2.4.3</version>
        </dependency>
        
        <dependency>
            <groupId>org.jxls</groupId>
            <artifactId>jxls-poi</artifactId>
            <version>1.0.14</version>
        </dependency>
        
        <dependency>
            <groupId>org.jxls</groupId>
            <artifactId>jxls-jexcel</artifactId>
            <version>1.0.6</version>
        </dependency>
        
        <dependency>
            <groupId>org.jxls</groupId>
            <artifactId>jxls-reader</artifactId>
            <version>2.0.3</version>
        </dependency>
        
        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi-ooxml</artifactId>
            <version>3.17</version>
        </dependency>
        
        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi</artifactId>
            <version>3.17</version>
        </dependency>
        
        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi-ooxml-schemas</artifactId>
            <version>3.17</version>
        </dependency>
 
--자바소스--
List<Map<String, Object>> list=서비스.겟리스트(search);
        String tempPath = request.getSession().getServletContext().getRealPath("/resources/excel/template");
        try(InputStream is = new BufferedInputStream(new FileInputStream(tempPath+"/템플릿.xlsx"))) {
            response.setHeader("Content-Disposition""attachment; filename=\"" + "다운받을파일명" + ".xlsx\"");            
            try (OutputStream os = response.getOutputStream()) {
                Context context = new Context();
                context.putVar("list", list);
                JxlsHelper.getInstance().processTemplate(is, os, context);
            }
        }
    }
 
--엑셀--
제목부분 메모
user: 
jx:area(lastCell="Q5")
첫번째셀 메모
user: 
jx:each(items="list" var="data" lastCell="Q5")
셀에들어가는내용
${data.key}
 
cs



2. 메모x forEach 사용안해도됨 workbook사용 XLSTransformer사용

엑셀 ${list.A}


시트네임설정

Context context = PoiTransformer.createInitialContext();
Workbook workbook = WorkbookFactory.create(templateInputStream);
workbook.setSheetName(0, "newName");//Changing name of the first sheet
PoiTransformer transformer = PoiTransformer.createTransformer(workbook);
transformer.setOutputStream(resultOutputstream);
JxlsHelper.getInstance().processTemplate(context, transformer);


'DEV > Spring&Java' 카테고리의 다른 글

Spring 인터셉터 Intercepter  (0) 2018.10.05
SHA256 암호화 키  (0) 2018.10.05
Javascript에서 ajax 많은데이터 넘길때  (0) 2018.10.05
Spring ajax통신  (0) 2018.10.05
Spring Mysql DB연동  (0) 2018.10.05
1
2
3
4
5
6
//javascript
$.ajax({
 data:{params:JSON.stringify(객체)}
})
//Controller
JSONObject jsonObject=JSONObject.fromObject(request.getParameter("params"));
cs


'DEV > Spring&Java' 카테고리의 다른 글

Spring 인터셉터 Intercepter  (0) 2018.10.05
SHA256 암호화 키  (0) 2018.10.05
Spring Jxls 엑셀다운로드  (0) 2018.10.05
Spring ajax통신  (0) 2018.10.05
Spring Mysql DB연동  (0) 2018.10.05