当前位置: 首页 > news >正文

灰系网站做网站界面用什么软件

灰系网站,做网站界面用什么软件,中国住建部,城市建设协会网站大家好#xff0c;我很久没有写新文章了。 积累了很多资料#xff0c;需要在不久的将来在我的博客中发布。 但是现在我想谈谈Spring MVC应用程序配置。 确切地说#xff0c;我想谈谈基于Java的Spring配置。 尽管在3.0版本中引入了基于Spring Java的配置#xff0c;但是许多… 大家好我很久没有写新文章了。 积累了很多资料需要在不久的将来在我的博客中发布。 但是现在我想谈谈Spring MVC应用程序配置。 确切地说我想谈谈基于Java的Spring配置。 尽管在3.0版本中引入了基于Spring Java的配置但是许多开发人员仍然使用基于XML的方法。 我个人使用基于注释的配置因为它们在管理开发和维护方面更加方便。 如果您已经阅读过我的博客那么您可能会注意到在所有代码示例中我都完全使用基于Java的配置。 不久前我对我的项目进行了代码审查。 我注意到配置结构有问题。 对我来说有两个方面很糟糕 所有bean都配置在一个类中 在Web应用程序上下文中初始化太复杂 您可以在我所有的Spring MVC应用程序示例中看到这两个缺点。 例如您可以打开我关于CNVR的Spring REST服务的最新教程之一 。 看一下两个类 WebAppConfig和Initializer 。 WebAppConfig 第一个代表本文的第一点。 绝对我需要做一些事情来逻辑上拆分bean配置。 为了解决此问题我决定执行两个步骤 将数据库配置移到单独的类中 Configuration EnableTransactionManagement EnableJpaRepositories(com.mobapp.repository) public class DataBaseConfig {private static final String PROPERTY_NAME_DATABASE_DRIVER db.driver;private static final String PROPERTY_NAME_DATABASE_PASSWORD db.password;private static final String PROPERTY_NAME_DATABASE_URL db.url;private static final String PROPERTY_NAME_DATABASE_USERNAME db.username;private static final String PROPERTY_NAME_HIBERNATE_DIALECT hibernate.dialect;private static final String PROPERTY_NAME_HIBERNATE_SHOW_SQL hibernate.show_sql;private static final String PROPERTY_NAME_ENTITYMANAGER_PACKAGES_TO_SCAN entitymanager.packages.to.scan;Resourceprivate Environment env;Beanpublic DataSource dataSource() {DriverManagerDataSource dataSource new DriverManagerDataSource();dataSource.setDriverClassName(env.getRequiredProperty(PROPERTY_NAME_DATABASE_DRIVER));dataSource.setUrl(env.getRequiredProperty(PROPERTY_NAME_DATABASE_URL));dataSource.setUsername(env.getRequiredProperty(PROPERTY_NAME_DATABASE_USERNAME));dataSource.setPassword(env.getRequiredProperty(PROPERTY_NAME_DATABASE_PASSWORD));return dataSource;}Beanpublic LocalContainerEntityManagerFactoryBean entityManagerFactory() {LocalContainerEntityManagerFactoryBean entityManagerFactoryBean new LocalContainerEntityManagerFactoryBean();entityManagerFactoryBean.setDataSource(dataSource());entityManagerFactoryBean.setPersistenceProviderClass(HibernatePersistence.class);entityManagerFactoryBean.setPackagesToScan(env.getRequiredProperty(PROPERTY_NAME_ENTITYMANAGER_PACKAGES_TO_SCAN));entityManagerFactoryBean.setJpaProperties(hibProperties());return entityManagerFactoryBean;}private Properties hibProperties() {Properties properties new Properties();properties.put(PROPERTY_NAME_HIBERNATE_DIALECT, env.getRequiredProperty(PROPERTY_NAME_HIBERNATE_DIALECT));properties.put(PROPERTY_NAME_HIBERNATE_SHOW_SQL, env.getRequiredProperty(PROPERTY_NAME_HIBERNATE_SHOW_SQL));return properties; }Beanpublic JpaTransactionManager transactionManager() {JpaTransactionManager transactionManager new JpaTransactionManager();transactionManager.setEntityManagerFactory(entityManagerFactory().getObject());return transactionManager;}} 在主配置类中转换WebAppConfig类并通过Import批注将其余的配置类在当前情况下仅为DataBaseConfig类分配给它。 Configuration EnableWebMvc Import({DataBaseConfig.class}) ComponentScan(com.mobapp) PropertySource(classpath:application.properties) public class WebAppConfig extends WebMvcConfigurerAdapter {Resourceprivate Environment env;Overridepublic void addResourceHandlers(ResourceHandlerRegistry registry) {registry.addResourceHandler(/resources/**).addResourceLocations(/resources/);}Overridepublic void configureContentNegotiation(ContentNegotiationConfigurer configurer) {configurer.favorPathExtension(true).useJaf(false).ignoreAcceptHeader(true).mediaType(html, MediaType.TEXT_HTML).mediaType(json, MediaType.APPLICATION_JSON).defaultContentType(MediaType.TEXT_HTML);}Beanpublic ViewResolver contentNegotiatingViewResolver(ContentNegotiationManager manager) {List ViewResolver resolvers new ArrayList ViewResolver ();InternalResourceViewResolver r1 new InternalResourceViewResolver();r1.setPrefix(/WEB-INF/pages/);r1.setSuffix(.jsp);r1.setViewClass(JstlView.class);resolvers.add(r1);JsonViewResolver r2 new JsonViewResolver();resolvers.add(r2);ContentNegotiatingViewResolver resolver new ContentNegotiatingViewResolver();resolver.setViewResolvers(resolvers);resolver.setContentNegotiationManager(manager);return resolver;}/*** View resolver for returning JSON in a view-based system. Always returns a* {link MappingJacksonJsonView}.*/public class JsonViewResolver implements ViewResolver {public View resolveViewName(String viewName, Locale locale)throws Exception {MappingJacksonJsonView view new MappingJacksonJsonView();view.setPrettyPrint(true);return view;}}} 这样您可以将单个大型配置类分为几个较小的类这些类将包含针对它们的特定配置。 初始化器 在上面提到的示例中 Initializer类的代码过于冗长并提供了指向其的链接。 我在那里注册了Web应用程序的根配置映射和过滤器。 如何减少代码行数 我在AbstractAnnotationConfigDispatcherServletInitializer类上找到了答案。 查看该类您会注意到它实现了WebApplicationInitializer接口我在上一版本的Initializer类中已实现了该接口。 所以这是Initializer的新版本 public class Initializer extends AbstractAnnotationConfigDispatcherServletInitializer {Overrideprotected Class ? [] getRootConfigClasses() {return null;}Overrideprotected Class ? [] getServletConfigClasses() {return new Class ? [] { WebAppConfig.class };}Overrideprotected String[] getServletMappings() {return new String[] { / };}Overrideprotected Filter[] getServletFilters() {return new Filter[] { new HiddenHttpMethodFilter() };}} 由于这两个步骤我使Spring MVC应用程序的配置更加优雅。 现在您也可以这样做。 祝好运 参考 Spring在Fruzenshtein的Notes博客上与我们的JCG合作伙伴 Alexey Zvolinskiy一起使基于Java的配置更加优雅 。 翻译自: https://www.javacodegeeks.com/2013/11/spring-make-your-java-based-configuration-more-elegant.html
http://www.pierceye.com/news/975302/

相关文章:

  • seo网站外链工具看设计比较好的网站
  • 济南道驰网站建设有限公司怎么样某网站网站的设计与实现
  • 服装印花图案设计网站设计一个网站要多久
  • ai怎么做自己的网站getpage wordpress使用详解
  • 龙岩做网站推广龙岗网站 建设深圳信科
  • 沈阳网站建设 网络服务广告公司首页
  • 旅游网站建设导航栏中国哪里正在大开发大建设
  • 哪能建设网站建设网站需要哪些流程图
  • 网站YYQQ建设o2o型网站
  • 给客户做网站 赚钱吗赣州省住房和城乡建设厅网站
  • 营销优化型网站怎么做手机app网页制作
  • 上海网站建设服wordpress友情链接排序
  • 沈阳市和平区网站建设编程课适合多大孩子学
  • 东阳网站优化懒人图库
  • 马关县网站建设专注营销型网站建设
  • 微信公众号公众平台太原seo关键词优化
  • 沈阳网站建设方案二级网站怎样被百度收录
  • 厦门数字引擎 怎么打不开网站youku网站开发技术
  • 中小企业网站建设论文郑州网站服务公司
  • 工信部网站备案验证码文化传媒网站封面
  • 境外做网站网站百度代运营
  • 南京学校网站建设策划手机网站默认全屏
  • 东莞公司网站策划万网买网站
  • 建筑网站视频大全做外汇网站卖判刑多少年
  • 手机网站菜单网页怎么做东莞网站优化方案
  • 公众号免费素材网站wordpress无法开始安装
  • 建设银行互联网网站首页网站备案 视频
  • 免费优化网站建设做app和网站哪个比较好用
  • 韩国最牛的设计网站大全网站设计的尺寸
  • 一家专门做特卖的网站类似非小号的网站怎么做