DAO 층 프로필
application.xml을 파일
경로 : 자원 -> 스프링이> application.xml을
<? XML 버전 = " 1.0 " 인코딩 = " UTF-8 " ?> <콩의 xmlns = " http://www.springframework.org/schema/beans " 의 xmlns :이 xsi = " http://www.w3.org / 2001 / 된 XMLSchema 인스턴스 " XMLNS : 문맥 = " http://www.springframework.org/schema/context " XSI :의 schemaLocation = " http://www.springframework.org/schema/beans HTTP : // WWW. springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd "> <-导入外部资源->! <컨텍스트 : 속성 - 자리 위치 = " 클래스 경로 스프링 / jdbc.properties " > < / 컨텍스트 : 부동산-자리> <! -创建스프링 JDBC的数据源-> <콩 ID = " 는 dataSource " 클래스 = " org.springframework.jdbc.datasource.DriverManagerDataSource " > <속성 이름 = " driverClassName " 값 = " $ {jdbc.driver} " /> <속성 이름 = "URL " 값 =" $ {jdbc.sql.url} " /> <속성 이름 = " 사용자 이름 " 값 = " $ {jdbc.username} " /> <속성 이름 = " 암호 " 값 = " $ {jdbc.userpwd} " /> </ 콩> <! -创建SqlSessionFactory는对象-> <콩 ID = " SqlSessionFactory는 " 클래스 = " org.mybatis.spring.SqlSessionFactoryBean " > <속성 이름 = "은 dataSource " REF = "DataSource에 " /> <! - MyBatis로 다른 구성 (Configuration 탭 지원) -> <속성 이름 = " 플러그인 " > <배열> <빈 클래스 = " com.github.pagehelper.PageInterceptor " > <속성 이름 = " 속성 " > <소품이> <! -> - 탭 구성 매개 변수가있는 데이터베이스 <소품 키 = " helperDialect " > MySQL의 </ 소품> </ 소품> </ property>를/ 소품> </ 콩> </ 배열> </ property>를 <- 두 번째 방법은 페이징 정보! -> <! - <속성 명 =! " configLocation " 값 = " 클래스 경로 : SqlMapConfig.xml " > </ 속성> -> </ 빈> <! - 스캔 패키지 동적 인터페이스 프록시 개체 -> <빈 클래스 = " org.mybatis.spring.mapper.MapperScannerConfigurer " > <속성 이름 = " basePackage " 값 = " cn.kgc.dao " / > </ 빈> </ 콩>
jdbc.properpies 파일
경로 : 자원 -> 스프링이> jdbc.properpies
jdbc.driver : com.mysql.jdbc.Driver의 jdbc.sql.url : JDBC한다 : mysql : // localhost를 : 3306 / 여행 jdbc.username : 루트 jdbc.userpwd : 관리자
log4j2.xml 파일
경로 : 자원 -> log4j2.xml
<? XML 버전 = "1.0"인코딩 = "UTF-8"?> <Configuration 상태 = "경고"monitorInterval = "30"엄격한 = "true"로 스키마 = "Log4J를-V2.2.xsd"> <의 Appender> < 콘솔 NAME = "콘솔"대상 = "SYSTEM_OUT"> <! -将日志输出到控制台-> <PatternLayout은 패턴 = "% 일 {YYYY-MM-DD HH : MM : ss.SSS} [% 스레드] % 수준 [%의 C {36} %의 M.] - %의 MSG를 % 않음 "/> </ 콘솔> <-将日志输出到文件中->! <파일 이름 ="myLogFile 'FILENAME = "D / ssm.log 진정한 ">"= 추가 "/ 로그인 {mm : YYYY-MM-DD HH ss.SSS} <PatternLayout은 패턴 ="% 날짜 [. %의 C {36} %의 M] [% 스레드] % 수준 - % N % MSG "/> </ 파일> </의 Appender> <로거> <! -全局配置-> <루트 레벨 = "정보"> <! -普通日志要在哪里显示-> <로거 이름 = "org.springframework.jdbc"수준 = "디버그"상가 = "거짓"> <appenderRef REF = "콘솔"/> <펜더-REF REF = "myLogFile"/> </ 루트> <! -业务层日志-> <로거 이름 = "com.itheima.service"수준 = "디버그" 상가> = "false"를 <펜더-REF REF = "콘솔"/> <펜더-REF REF = "myLogFile"/> </ 로거> <! -持久层日志-> <로거 이름 = "com.itheima .dao "수준 ="디버그 "상가 ="거짓 "> <펜더-REF REF ="콘솔 "/> <펜더-REF REF ="myLogFile "/> </ 로거> <! -事务日志-> <펜더-REF REF = "myLogFile"/> </ 로거> <펜더-REF REF = "콘솔"/> </ 로거> </ 구성>
sqlMapConfig.xml 파일
페이징 지원 파일
경로 : 자원 -> sqlMapConfig.xml
<? XML 버전 = "1.0"인코딩 = "UTF-8"?>
<! DOCTYPE 구성
PUBLIC "- // mybatis.org//DTD 구성 3.0 // EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<구성>
<플러그인>
<플러그인 인터셉터 = " com.github.pagehelper.PageInterceptor "/>
</ 플러그인>
</ 구성>
서비스 수준 프로필
경로 : 자원 -> 스프링이> spring.xml
<? XML 버전 = "1.0"인코딩 = "UTF-8"?> <콩의 xmlns = "http://www.springframework.org/schema/beans" 의 xmlns :이 xsi = "http://www.w3.org / 2001 / 된 XMLSchema 인스턴스 " 의 xmlns : 컨텍스트 ="http://www.springframework.org/schema/context " 의 xmlns : TX ="http://www.springframework.org/schema/tx " 에 xmlns : AOP =" http://www.springframework.org/schema/aop " XSI :의 schemaLocation ="http://www.springframework.org/schema/beans HTTP : // www.springframework.org/schema/beans/spring-beans. XSD HTTP : // www.springframework.org/schema/context HTTP ://www.springframework.org/schema/context/spring-context.xsd HTTP : // www.springframework.org/schema/tx HTTP : // www.springframework.org/schema/tx/spring-tx.xsd HTTP : / / www.springframework.org/schema/aop HTTP : // www.springframework.org/schema/aop/spring-aop.xsd "> <! - 도입 지속성 구성 파일 -> <! - < 가져 오기 리소스 = "CLASSPATH * 다음 applicationContext.xml"> </ 오기 > -> <! - 주사 패키지 ->! <컨텍스트 : 스캔베이스 - 부품 패키지 = "cn.kgc.service"/> <! - 트랜잭션 관리자 개체 -> <콩 위에서 언급 한 id = "의 transactionManager " 클래스= "org.springframework.jdbc.datasource.DataSourceTransactionManager"> <속성 이름 = "는 dataSource"REF = "는 dataSource"> </ 부동산> </ 빈> <-事务通知对象->! <TX : 조언 ID = "txAdvice"트랜잭션 매니저 = "의 transactionManager"> <TX : 속성> <TX : 방법 이름 = "찾을 수 *"= "true"를 전파 = /> "을 지원합니다"읽기 전용 <TX : 메소드 이름 = "쿼리를 *" 읽기 전용 = "true"를 전파 = "을 지원합니다"/> <TX : 메소드 이름 = "GET *"읽기 전용 = "true"를 전파 = "을 지원합니다"/> <TX : 메소드 이름을 = "*"읽기 전용 = "거짓 "전파 ="필수 "/> </ TX : 속성> </ TX : 조언> <- AOP切面配置->! <AOP : 설정> <AOP : 권고 조언-REF = "txAdvice"포인트 컷 = "실행 (cn.kgc.service.impl * * * (...)..)"> </ AOP : 권고> </ AOP : 구성> </ 콩 >
컨트롤러 레이어 프로필
springMVC.xml 파일
경로 : 자원 -> springMVC.xml
<? XML 버전 = "1.0"인코딩 = "UTF-8"?> <콩의 xmlns = "http://www.springframework.org/schema/beans" 의 xmlns :이 xsi = "http://www.w3.org / 2001 / 된 XMLSchema 인스턴스 " 의 xmlns : 컨텍스트 ="http://www.springframework.org/schema/context " 의 xmlns : MVC ="http://www.springframework.org/schema/mvc " 는 xsi :의 schemaLocation =" http://www.springframework.org/schema/beans HTTP : // www.springframework.org/schema/beans/spring-beans.xsd HTTP : // www.springframework.org/schema/context HTTP : // WWW .springframework.org / 스키마 / 환경 / 스프링 컨텍스트.XSD HTTP : //www.springframework.org/schema/mvc HTTP : // www.springframework.org/schema/mvc/spring-mvc.xsd "> <-扫描包->! <컨텍스트 : 구성 요소 스캔 기지 - 패키지 =" cn.kgc.controller "> </ 컨텍스트 : 구성 요소 스캔> <! -视图解析器-> <빈 클래스 ="org.springframework.web.servlet.view.InternalResourceViewResolver "> <속성 이름 ="앞에 " 값 = "/ 페이지 /"> </ 부동산> . "JSP"<속성 이름 = "접미사"값 => </ 부동산> </ 빈> <-注解驱动->! <MVC : 주석 중심> </ MVC : 주석 중심> <! -静态资源放行-> <MVC : 기본 -servlet 핸들러> </ MVC : 기본 -servlet 핸들러> </ 콩>
스프링 security.xml 파일
경로 : 자원 -> 스프링 security.xml
보안 프레임 워크 문서
<? XML 버전 = "1.0"인코딩 = "UTF-8"?> <콩의 xmlns = "http://www.springframework.org/schema/beans" 의 xmlns :이 xsi = "http://www.w3.org / 2001 / 된 XMLSchema 인스턴스 " XMLNS : 보안 ="http://www.springframework.org/schema/security " XSI :의 schemaLocation ="http://www.springframework.org/schema/beans HTTP : // WWW. springframework.org/schema/beans/spring-beans.xsd HTTP : // www.springframework.org/schema/security HTTP : // www.springframework.org/schema/security/spring-security.xsd "> <! - -不拦截静态资源-> <보안 : HTTP 패턴 = "/ CSS / **"보안 = "없음"/> <보안 : HTTP 패턴 = "/ IMG / **"보안 = "없음"/> <보안 : HTTP 패턴 = "/ 플러그인 / **"보안 = "없음"/> <! - 로그인을 차단하지,하지 않습니다 차단 오류, 구글 플러그인에서 그 아이콘과 함께 제공 차단하지 않습니다 -> <보안 : HTTP 패턴 = "/를의 login.jsp"보안 = "없음"/> <보안 : HTTP 패턴 = "/ errror.jsp"보안 = "없음"/> <보안 : HTTP 패턴 = "/ favicon.ico의"보안 = "없음"/> <! - - 차단 규칙 조항, 자동 구성 = 사용 표현식 여부 SpEL을 표현 "기본 페이지를 사용하여"> < 보안 : HTTP 자동 설정 = 사용-표현 "true로"= "거짓"> <보안 : 인터셉트 URL 패턴 = "/ **"액세스 = "ROLE_USER"/> <!- 페이지에서 사용하는 보안 프레임 워크를 사용하여 로그인을 - 페이지의 로그인 페이지를 참조 로그인 하는 과정과 로그온 요청 URL 경로 -로그인이 경로를 사용해야합니다 기본 -target-을 페이지의 URL에 성공적으로 로그인 한 후 인증 -failure- 로그인 페이지 실패 URL 입력 > - 형상 - <보안 로그인 로그인 -page = "/를의 login.jsp" 로그인 -processing-을 = URL "/ 로그인" 기본 -target-URL = "/를 index.jsp를" 인증 폭주-URL = "/를의 login.jsp" > / <- 크로스 도메인 요청을 폐쇄 ->! <보안 : CSRF = 사용 안 함 " true로 "/> ! - 종료 - <> <보안 : 짐바브웨 로그 아웃 - 무효 인 세션 ="true로 "짐바브웨 로그 아웃-URL ="/ 짐바브웨 로그 아웃 "로그 아웃 - 성공 URL = "/의 login.jsp"/> </ 보안 : HTTP> <- 계정 암호와 함께 제공되는 인증 로그인 인증 관리자를 구성! -> <보안 : 인증 관리자> <보안 : 인증 사용자-서비스 공급 업체-REF = "userService"> <! - - 스프링 보안 내장 된 암호화 -> <보안 : 암호 인코더 심판 = "되는 PasswordEncoder"/> <- <보안 :! 사용자 서비스> -> <! - 임시 비밀번호의 기관 : 지정된 사용자 인증 역할 {무 조작은} 암호화되지 -> <- <보안 :! 사용자 이름 = "ADMIN"암호 = "{무 조작} ADMIN"당국 = "는 ROLE_USER을 가진 사용자"> </ 보안 : 사용자> -> <! - - </ 보안 : 사용자 서비스 > -> </ 보안 : 인증 제공> </ 보안 : 인증 관리자> <! - 스프링 용기에 원하는 스프링 보안 암호화 패킷 -> <빈 ID = "되는 PasswordEncoder 「클래스 ="org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder " /> </ 콩>