`
yaoweinan
  • 浏览: 137514 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

无配置文件 搭建

 
阅读更多

今天搞了个spring3.1+servlet3 无配置项目,事到此时终于算出了一个小东东了

记录于此,已被后用。

1.创建项目,使用eclipse+tomcat7

2.导入spring的包,除此之外还导入了asm-2.2.2.jar、cglib-nodep-2.1_3.jar(这个别导入hibernate的了)、jstl-1.0.2.jar、jackson-all-1.9.1.jar、commons-logging-1.1.1.jar、mysql-connector-java-5.1.12-bin.jar

3.删除了web.xml,准备二个文件:

   jdbc.properties

jdbc.driver=com.mysql.jdbc.Driver

jdbc.url=jdbc:mysql://localhost:3306/db_smg?useUnicode=true&charaterEncoding=UTF-8
jdbc.username=root
jdbc.password=****

  properties-config.xml

    <?xml version="1.0" encoding="UTF-8"?>

<beans xmlns="http://www.springframework.org/schema/beans"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns:context="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-3.0.xsd
      http://www.springframework.org/schema/context
      http://www.springframework.org/schema/context/spring-context-3.0.xsd
      http://www.springframework.org/schema/mvc
      http://www.springframework.org/schema/mvc/spring-mvc-3.1.xsd">
  <context:property-placeholder location="classpath:/com/acme/jdbc.properties"/>
  <mvc:resources mapping="/static/**" location="/static/"/>  
</beans>

 4.编写启动容器加载的java文件和java 程序代替的配置

Initializer.java

package com.acme.web;

import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.ServletRegistration;

import org.springframework.web.WebApplicationInitializer;
import org.springframework.web.context.support.AnnotationConfigWebApplicationContext;
import org.springframework.web.servlet.DispatcherServlet;

public class Initializer implements WebApplicationInitializer {

	public void onStartup(ServletContext servletContext) throws ServletException {
		// TODO Auto-generated method stub
		AnnotationConfigWebApplicationContext mvcContext = new AnnotationConfigWebApplicationContext();
		mvcContext.register(MvcConfig.class);
		  ServletRegistration.Dynamic dispatcher = servletContext.addServlet(
		    "dispatcher", new DispatcherServlet(mvcContext));
		  dispatcher.setLoadOnStartup(1);
		  dispatcher.addMapping("/");
	}

}

 MvcConfig.java

package com.acme.web;

import java.lang.reflect.Method;
import java.util.List;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Import;
import org.springframework.format.FormatterRegistry;
import org.springframework.http.converter.ByteArrayHttpMessageConverter;
import org.springframework.http.converter.FormHttpMessageConverter;
import org.springframework.http.converter.HttpMessageConverter;
import org.springframework.http.converter.StringHttpMessageConverter;
import org.springframework.http.converter.json.MappingJacksonHttpMessageConverter;
import org.springframework.http.converter.xml.SourceHttpMessageConverter;
import org.springframework.ui.ExtendedModelMap;
import org.springframework.validation.Validator;
import org.springframework.web.context.request.NativeWebRequest;
import org.springframework.web.method.support.HandlerMethodArgumentResolver;
import org.springframework.web.method.support.HandlerMethodReturnValueHandler;
import org.springframework.web.servlet.HandlerExceptionResolver;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.ViewResolver;
import org.springframework.web.servlet.config.annotation.DefaultServletHandlerConfigurer;
import org.springframework.web.servlet.config.annotation.EnableWebMvc;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.ViewControllerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
import org.springframework.web.servlet.mvc.annotation.ModelAndViewResolver;
import org.springframework.web.servlet.view.InternalResourceViewResolver;
import org.springframework.web.servlet.view.JstlView;

import com.acme.DBConfig;

@Configuration
@EnableWebMvc
@ComponentScan(basePackages = "com.spring.my")
@Import(DBConfig.class)
public class MvcConfig  extends WebMvcConfigurerAdapter{
	
	@Bean
	 public ViewResolver contentNegotiatingViewResolver() {
	  InternalResourceViewResolver internalResourceViewResolver = new InternalResourceViewResolver();
	  internalResourceViewResolver.setPrefix("/views/");
	  internalResourceViewResolver.setSuffix(".jsp");
	  internalResourceViewResolver.setViewClass(JstlView.class);
	  return internalResourceViewResolver;
	 }
	@Bean
	public ModelAndViewResolver modelAndViewResolver(){
		return new ModelAndViewResolver() {
			@Override
			public ModelAndView resolveModelAndView(Method arg0, Class arg1,
					Object arg2, ExtendedModelMap arg3, NativeWebRequest arg4) {
				// TODO Auto-generated method stub
				return UNRESOLVED;
			}
		};
	}
	@Override
	public void addArgumentResolvers(
			List<HandlerMethodArgumentResolver> argumentResolvers) {
		// TODO Auto-generated method stub
		super.addArgumentResolvers(argumentResolvers);
	}
	@Override
	public void addFormatters(FormatterRegistry registry) {
		// TODO Auto-generated method stub
		super.addFormatters(registry);
	}
	@Override
	public void addInterceptors(InterceptorRegistry registry) {
		// TODO Auto-generated method stub
		super.addInterceptors(registry);
	}
	@Override
	public void addResourceHandlers(ResourceHandlerRegistry registry) {
		// TODO Auto-generated method stub
//		registry.addResourceHandler("");
		super.addResourceHandlers(registry);
	}
	@Override
	public void addReturnValueHandlers(
			List<HandlerMethodReturnValueHandler> returnValueHandlers) {
		// TODO Auto-generated method stub
		super.addReturnValueHandlers(returnValueHandlers);
	}
	@Override
	public void addViewControllers(ViewControllerRegistry registry) {
		// TODO Auto-generated method stub
		super.addViewControllers(registry);
	}
	@Override
	public void configureDefaultServletHandling(
			DefaultServletHandlerConfigurer configurer) {
		// TODO Auto-generated method stub
//		configurer.enable();
		super.configureDefaultServletHandling(configurer);
	}
	@Override
	public void configureHandlerExceptionResolvers(
			List<HandlerExceptionResolver> exceptionResolvers) {
		// TODO Auto-generated method stub
		super.configureHandlerExceptionResolvers(exceptionResolvers);
	}
	@SuppressWarnings("rawtypes")
	@Override
	public void configureMessageConverters(
			List<HttpMessageConverter<?>> converters) {
		// TODO Auto-generated method stub
		converters.add(new MappingJacksonHttpMessageConverter());
		converters.add(new SourceHttpMessageConverter());
		converters.add(new FormHttpMessageConverter());
		converters.add(new StringHttpMessageConverter());
		converters.add(new ByteArrayHttpMessageConverter());
		super.configureMessageConverters(converters);
	}
	@Override
	public Validator getValidator() {
		// TODO Auto-generated method stub
		Validator v= super.getValidator();
		return v;
	}
	
}

 DBConfig.java

package com.acme;

import javax.sql.DataSource;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.ImportResource;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.datasource.DriverManagerDataSource;

@Configuration
@ImportResource("classpath:/com/acme/properties-config.xml")
public class DBConfig {
	private @Value("${jdbc.driver}")
	String driver;
	private @Value("${jdbc.url}")
	String url;
	private @Value("${jdbc.username}")
	String username;
	private @Value("${jdbc.password}")
	String password;
	public @Bean
	DataSource dataSource() {
		System.out.println("OK-------------------------");
		DriverManagerDataSource dataSource=new DriverManagerDataSource(url, username, password);
		dataSource.setDriverClassName(driver);
		return dataSource;
	}
	public @Bean
	JdbcTemplate jdbcTemplate(){
		return new JdbcTemplate(dataSource());
		
	}
}

 5.创建好各个目录(根据配置程序和仅有的一个xml)

6. 编写测试程序,启动项目测试(附件含有)

分享到:
评论

相关推荐

    Hadoop伪分布式搭建配置文件

    我们将依据《如何搭建hadoop伪分布式》这篇文章,并结合提供的配置文件来探讨相关知识点。 首先,你需要下载Hadoop的安装包,推荐选择稳定版本,如Hadoop 2.x或3.x系列。下载完成后,解压到一个合适的目录,例如`/...

    哨兵配置文件(搭建哨兵时候需要的配置文件)

    哨兵配置文件

    搭建hadoop集群的全部配置文件

    在搭建Hadoop集群的过程中,配置文件起着至关重要的作用,它们定义了集群的运行方式、节点间通信方式以及数据存储和处理的策略。本压缩包包含的文件是全面的Hadoop集群配置集合,旨在帮助用户顺利构建和管理自己的...

    iniparser配置文件,参考海思万能平台搭建:配置文件iniparser的引入

    《海思万能平台搭建与iniparser配置文件解析》 在IT行业中,配置文件扮演着至关重要的角色,它们是软件系统与用户交互的关键接口,用于定制化软件的行为。其中,`iniparser`是一个轻量级的C语言库,专门用于解析`....

    集群搭建所需要的配置文件.zip

    本资料包包含的“集群搭建所需要的配置文件.zip”是实现这一目标的关键资源。下面将详细介绍其中涉及的配置文件及其重要性。 首先,我们要关注的是“完全分布式集群配置文件”。这种类型的集群旨在通过多个节点间的...

    整套大数据搭建配置文件

    本资料集合了包括Hadoop、Zookeeper、Kafka、Spark、Flume以及Scala和Hive等多个关键组件的配置文件,旨在帮助用户构建稳定且功能强大的大数据处理环境。 1. **Hadoop**:Hadoop是Apache软件基金会开发的一个开源...

    文件服务器的配置以及文件服务器的搭建

    文件服务器的配置与搭建是IT领域中网络管理的基础工作,尤其在企业局域网环境中,文件服务器扮演着数据存储和资源共享的重要角色。Windows Server 2003(SP1)作为一个经典的服务器操作系统,提供了完善的文件服务...

    在windows xp快速配置 搭建 DNS 服务器 bind 9 详细配置文件

    本文将详细介绍如何在Windows XP上配置BIND 9,并解释压缩包中的配置文件如何用于快速搭建DNS服务。 首先,让我们了解DNS的基本概念。DNS(Domain Name System)是互联网的一种分布式命名系统,它将易于记忆的域名...

    Hive的环境搭建配置文件

    Hive的环境搭建配置文件

    使用spring+springmvc+mybatis搭建项目需要的配置文件,和jar包全部

    下面我们将深入探讨这三大框架以及在搭建项目时所需的配置文件和jar包。 首先,Spring框架是整个应用的基础,它提供了IOC(控制反转)和AOP(面向切面编程)等核心特性。在项目中,你需要创建一个`beans.xml`配置...

    IntelliJ IDEA搭建SSH框架流程说明及配置文件

    本教程将详细介绍如何使用IntelliJ IDEA搭建SSH框架,并提供必要的配置文件。 首先,我们需要了解SSH框架的核心组件: 1. **Struts**:作为MVC(模型-视图-控制器)架构的一部分,负责处理HTTP请求,控制应用程序...

    hadoop2搭建 修改好的配置文件

    已经修改好的hadoop2的配置文件,有关文件路径的地方需要使用者按照自己的路径修改

    hadoop-2.8.1完全分布式搭建脚本和配置文件

    这个压缩包文件"hadop-2.8.1完全分布式搭建脚本和配置文件"提供了在集群环境中搭建Hadoop 2.8.1版本的详细步骤,特别强调了高可用性和自动化配置。 1. **Hadoop 2.8.1**:这是Hadoop的一个稳定版本,它包含了对HDFS...

    ingress搭建配置文件deploy.yaml

    ingress搭建配置文件deploy.yaml

    hadoop-2.8.1一键搭建脚本和配置文件

    本资源包提供了“hadoop-2.8.1一键搭建脚本和配置文件”,旨在帮助用户快速、简便地构建一个Hadoop分布式集群。 首先,我们来了解一下Hadoop的核心组件。Hadoop由两个主要部分组成:Hadoop Distributed File System...

    Asterisk服务器的搭建与配置.docx

    Asterisk服务器的配置文件都在/etc/asterisk文件夹下。首先,需要切换到该文件夹: cd /etc/asterisk 然后,需要配置用户信息。在sip.conf文件中添加以下内容: [general] context = default tcpbindaddr = 0.0....

    redis集群搭建配置文件.zip

    本压缩包"redis集群搭建配置文件.zip"包含了搭建 Redis 集群所需的基本配置文件,包括服务器1、服务器2、服务器3的配置,这表明我们要搭建一个由三个节点组成的Redis集群。 Redis 集群搭建的核心概念有以下几个: ...

    Apache2.2配置文件

    配置过的Apache2.2的配置文件,该配置文件已经配置好了PHP和CGI的支持,只需要进入修改相应的用户目录即可正常运行

Global site tag (gtag.js) - Google Analytics