Spring4.2+Hibernate5配置
本次配置使用的是注解的方式配置:
1.引入maven依赖
Spring:
<!--Spring --> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <argLine>-Dfile.encoding=UTF-8</argLine> <spring.version>4.2.4.RELEASE</spring.version> <tomcat.version>8.0.23</tomcat.version> </properties> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-expression</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-web</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context-support</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-test</artifactId> <version>${spring.version}</version> <scope>test</scope> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-orm</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-tx</artifactId> <version>${spring.version}</version> </dependency> <!--Spring -->
Hibernate:
<dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-core</artifactId> <version>4.3.11.Final</version> </dependency> <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-validator</artifactId> <version>5.2.1.Final</version> </dependency> <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-entitymanager</artifactId> <version>4.3.11.Final</version> </dependency> <dependency> <groupId>javax.validation</groupId> <artifactId>validation-api</artifactId> <version>1.1.0.Final</version> </dependency> Tomcat <dependency> <groupId>org.apache.tomcat</groupId> <artifactId>tomcat-servlet-api</artifactId> <version>${tomcat.version}</version> <scope>provided</scope> </dependency> <dependency> <groupId>org.apache.tomcat</groupId> <artifactId>tomcat-jsp-api</artifactId> <version>${tomcat.version}</version> <scope>provided</scope> </dependency> <dependency> <groupId>org.apache.tomcat</groupId> <artifactId>tomcat-jdbc</artifactId> <version>${tomcat.version}</version> <scope>provided</scope> </dependency> <dependency> <groupId>org.freemarker</groupId> <artifactId>freemarker</artifactId> <version>2.3.9</version> </dependency> 项目初始化 1.创建WebApp容器,这里使用的是注解容器 public class WebAppContext { public static final AnnotationConfigWebApplicationContext context = new AnnotationConfigWebApplicationContext(); public static <T> T getBean(Class<T> requiredType) { return context.getBean(requiredType); } } 2.创建注解容器的配置项 @Configuration @ComponentScan(basePackages = {"cn"}) @EnableWebMvc @ImportResource("classpath:conf/dispatch-mvc.xml") @EnableTransactionManagement(proxyTargetClass = true) public class WebAppConfig extends WebMvcConfigurerAdapter { 3.创建WebApplicationInitializer的实现类,WebInitializer,实现onStartup方法 @Override public void onStartup(ServletContext servletContext) throws ServletException { System.setProperty("APP_CONTEXT_PATH", servletContext.getContextPath()); /* * 创建并注册{@link DispatcherServlet} */ WebAppContext.context.register(WebAppConfig.class); DispatcherServlet dispatcherServlet = new DispatcherServlet( WebAppContext.context); dispatcherServlet.setThrowExceptionIfNoHandlerFound(true); ServletRegistration.Dynamic dispatcher = servletContext.addServlet( AbstractDispatcherServletInitializer.DEFAULT_SERVLET_NAME, dispatcherServlet); // dispatcher.setInitParameter("throwExceptionIfNoHandlerFound", // "true"); dispatcher.setLoadOnStartup(1); dispatcher.addMapping(DISPATCHER_SERVLET_MAPPING); // /:~ /* * 解决使用Restful时,静态资源被拦截的问题。在Spring3.2中,使用了addResourceHandler方法, * 对静态资源进行了映射 ,代替此解决方案 。 */ // servletContext.getServletRegistration("default").addMapping( // DEFAULT_URL_MAPPING); // /:~ // Manage the lifecycle of the root application context servletContext .addListener(new ContextLoaderListener(WebAppContext.context)); // 加入监听器,在系统关闭的时候,注销JDBC Driver // servletContext.addListener(new // ServletContextScopeListener()); // add filter CharacterEncodingFilter characterEncodingFilter = new CharacterEncodingFilter(); characterEncodingFilter.setEncoding("UTF-8"); characterEncodingFilter.setForceEncoding(true); servletContext .addFilter("CharacterEncodingFilter", characterEncodingFilter) .addMappingForUrlPatterns(EnumSet.noneOf(DispatcherType.class), false, "/*"); logger.info("Webapp has been initialized at {}", DateFormatUtils.format(new Date(), "yyyy-MM-dd HH:mm:ss")); }
相关推荐
wwwsurfphpseocom 2020-10-28
learningever 2020-09-19
周游列国之仕子 2020-09-21
voiletbin 2020-07-26
ldcwang 2020-07-26
mjshldcsd 2020-06-14
88236637 2020-06-03
81214051 2020-06-01
阳历六月 2020-05-14
bluet00 2020-05-12
wintershii 2020-04-21
luckyxl0 2020-04-19
MissFuTT 2020-04-15
88384957 2020-03-27
airfling 2020-02-22