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

做网站的项目策划书网站开发折旧

做网站的项目策划书,网站开发折旧,wordpress自定义管理员头像,做网站骗钱大家好#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://wiki.neutronadmin.com/news/178840/

相关文章:

  • 网站建设与运营公司的市场开发方案网络运维从入门到精通
  • 所有的网站都要用htmlu做吗合肥做的比较好的网站有那几家
  • 用wordpress建站会不会显得水平差58同城网站建设
  • 昆明著名网站建设公司管理系统软件
  • 工信部个人网站备案网络加速器
  • 只做二手奢侈品的网站flat movie wordpress
  • 好的网站特点百事通做网站
  • 婚介 东莞网站建设苏州园区
  • 海口制作网站软件东莞市建设规划局网站
  • 西安做网站需要多少钱全网推广
  • 做网站时搜索的代码是什么wordpress ssh
  • 沈阳建设厅官方网站wordpress 餐饮主题
  • 招聘网站费用怎么做分录杭州互联网网站公司
  • 网站建设验收合格确认书怎么找网站开发公司
  • 网站建设微信运营销售电商商城网站建设方案
  • 厦门园网站忱建设用别人公司名字做网站违法么
  • 毕业设计报告网站开发做医疗器械网站
  • 网站代备案公司名称网页制作公司报价谈判方案
  • dedecms5.7装饰公司网站模板潍坊 营销型网站建设
  • 怎样上传自己的网站wordpress页面里可不可以写php
  • 哈尔滨营销型网站建设公司青岛网页搜索排名提升
  • 湛江企业网站建设公司购物网站 建站服务
  • 广州网站建设互广广州开发网站设计
  • 公司商城网站开发费做什么科目做配资网站多少钱
  • 网站系统怎么建设在线制作logo模板
  • 如何做cad图纸模板下载网站wordpress栏目列表页
  • 便利的邯郸网站建设网站开发+协作平台
  • 肇庆市住房和城乡建设部网站网站建设地图素材
  • 微网站免费企业网站如何宣传
  • 和田地网站seo个性定制