源代码下载地址+jar包:https://git.oschina.net/zhuhongliang/spring4.0.2_Study

下面看下文档结构和数据库:

springannotation

mysql

 

很棒,还是只有三个文件,实现数据注入和jdbc

 

App.java:

package com.zhl.annotation;

import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;

public class app {

	public static void main(String[] args){
		
		ApplicationContext context = new AnnotationConfigApplicationContext(SpringConfig.class);
		
		HelloWorld obj = (HelloWorld) context.getBean("a");
		
		//obj.setMsg("天王盖地虎  \t ");
		
		obj.printHelloWorld();
		
		obj.find();
	}
}


HelloWorld.java:

package com.zhl.annotation;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;

import javax.annotation.Resource;
import javax.sql.DataSource;

import org.springframework.beans.factory.annotation.Autowired;

public class HelloWorld{

	private String msg;
	private String msgg;
	
	HelloWorld(){
		this.msgg = "宝塔镇河妖";
	}
	
	@Resource(name="b")
	public void setMsg(String msg){
		this.msg = msg;
	}
	
	
	@Resource(name="c")
	public void setMsgg(String msgg){
		this.msgg = msgg;
	}

	public void printHelloWorld() {
		
		System.out.println(msg + "\t" +msgg );
		
	}
	
	//下面是jdbc
	
	@Autowired
	private DataSource dataSource;
	
	
	public void setDataSource(DataSource dataSource){
		this.dataSource = dataSource;
	}


	public void find() {
		Connection conn = null;
		
		try {
			conn = dataSource.getConnection();
			String sql = "select * from `user` ";
			PreparedStatement ps = conn.prepareStatement(sql);
			ResultSet rs = ps.executeQuery();
			while (rs.next()) {
				System.out.println("----------------------------------");
				System.out.println("name\t"+rs.getString("name"));
				System.out.println("age\t"+rs.getInt("age"));
				System.out.println("sex\t"+rs.getString("sex"));
				

			}
	
		}catch(Exception e){
			System.out.println(e);
		}
	}
}

SpringConfig.java:

package com.zhl.annotation;

import javax.sql.DataSource;

import org.apache.commons.dbcp.BasicDataSource;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;


@Configuration
public class SpringConfig {
	
	@Bean(name="dataSource")
    public DataSource dataSource() {  
        BasicDataSource dataSource = new BasicDataSource();  
        dataSource.setDriverClassName("com.mysql.jdbc.Driver");  
        dataSource.setUrl("jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8");  
        dataSource.setUsername("root");  
        dataSource.setPassword("root");  
        return dataSource;  
    }  

	@Bean(name="a")
	public HelloWorld helloWorld(){
		HelloWorld a = new HelloWorld();
		return a;
	}
	
	
	@Bean(name="b")
	public String msggg(){
		String msggg = "小鸡炖蘑菇";
		return msggg;
	}
	
	
	@Bean(name="c")
	public String msgggg(){
		String msgggg = "一座玲珑塔,面向青寨背靠沙!";
		return msgggg;
	}
}

运行结果:(控制台输出结果最上面两行是log4j的提示信息,不要在意这个细节)

log4j:WARN No appenders could be found for logger (org.springframework.core.env.StandardEnvironment).
log4j:WARN Please initialize the log4j system properly.
小鸡炖蘑菇	一座玲珑塔,面向青寨背靠沙!
----------------------------------
name	tom
age	88
sex	man
----------------------------------
name	孙悟空
age	99999
sex	齐天大圣

源代码下载地址+jar包:https://git.oschina.net/zhuhongliang/spring4.0.2_Study

发表评论