SpringMvc(二)配置SpringMvc(二)

2014-11-24 00:38:34 · 作者: · 浏览: 1
type,acc_beizhu)" + "values( , , , , )"; /*入参*/ Object[] args = {ac.getAcc_time(),ac.getAcc_jine(),ac.isAcc_shouzhi(),ac.getAcc_type(),ac.getAcc_beizhu()}; return jdbcTemplate.update(sql,args);//返回成功失败 } }
package com.springMvc.dao.manager;

import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

import org.apache.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.RowCallbackHandler;
import org.springframework.stereotype.Repository;

import com.springMvc.model.TypeInfo;

@Repository
public class TypeManager {

	/*自动注入jdbcTemplate的bean*/
	@Autowired
	private JdbcTemplate jdbcTemplate;
	//logger
	private final static Logger logger = Logger.getLogger(TypeManager.class);
	
	/**
	 * 提供一个查询所有最底层类的方法,供给前台插入数据时选择
	 */
	public List
  
    selectAllTypes(){
		logger.info("----------------查询可用类型,dao层--!");
		/*这里我设想的是id不是别人的父类id肯定就是最子类了,sql不太擅长,有更好的方法欢迎提出*/
		String sql = "select type_id,type_name from account_type where type_id not in"
				+ "(select distinct type_parent from account_type)";
		final List
   
     resultList = new ArrayList
    
     (); jdbcTemplate.query(sql, new RowCallbackHandler() { @Override public void processRow(ResultSet rs) throws SQLException { TypeInfo ty = new TypeInfo(); ty.setType_id(rs.getInt("type_id")); ty.setType_name(rs.getString("type_name")); resultList.add(ty); } }); return resultList; } } 
    
   
  

一个account manager一个type manager,分别提供插入方法,和提供插入时选择账目类型列表。基本先够用了吧,这里返回类型列表用到了一个类型的model,如下

package com.springMvc.model;

public class TypeInfo {
	private Integer type_id;//id
	private String type_name;//描述
	public Integer getType_id() {
		return type_id;
	}
	public void setType_id(Integer type_id) {
		this.type_id = type_id;
	}
	public String getType_name() {
		return type_name;
	}
	public void setType_name(String type_name) {
		this.type_name = type_name;
	}
	
}

然后写service吧

package com.springMvc.service;

import com.springMvc.dao.entity.Account;

public interface AccountService {
	/**
	 * 插入账目
	 */
	public void insertAccout(Date acc_time,Integer acc_jine,Integer acc_shouzhi,Integer acc_type,Integer acc_beizhu);
}

package com.springMvc.service;

import java.util.List;

import com.springMvc.model.TypeInfo;

public interface TypeService {

	/**
	 * 调取可用类型
	 */
	public List
  
    selectAllTypes();
}
  
package com.springMvc.service.Impl;

import java.sql.Date;

import org.apache.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.springMvc.dao.entity.Account;
import com.springMvc.dao.manager.AccountManager;
import com.springMvc.service.AccountService;
@Service  //标注为服务层的一个service
public class AccountServiceImpl implements AccountService{
	
	//logger
	private final static Logger logger = Logger.getLogger(AccountServiceImpl.class);
	@Autowired//自动装配dao bean
	private AccountManager accountManager;
	@Override
	public void insertAccout(Date acc_time,Integer acc_jine,Integer acc_shouzhi,Integer acc_type,Integer acc_beizhu) {
		logger.info("----------------插入账目进入Se