📄 itemmanager.java
字号:
package com.bjsxt.drp.basedata.manager;
import java.io.IOException;
import java.io.InputStream;
import java.sql.Connection;
import java.util.Properties;
import com.bjsxt.drp.basedata.factory.ItemDaoFactory;
import com.bjsxt.drp.basedata.factory.impl.ItemDao4MySqlFactory;
import com.bjsxt.drp.basedata.model.Item;
import com.bjsxt.drp.exception.AppException;
import com.bjsxt.drp.util.DB;
import com.bjsxt.drp.util.PageModel;
/**
* 用户管理类,这个类中可以调用多个DAO,ItemManager把接口提供给Jsp及UI使用
* @author Administrator
*
*/
public class ItemManager {
private static ItemManager instance = new ItemManager();
private ItemDaoFactory itemDaoFactory;
private ItemManager() {
Properties props = loadProperties();
String className = props.getProperty("item-dao-factory");
try {
this.itemDaoFactory = (ItemDaoFactory)Class.forName(className).newInstance();
} catch (InstantiationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
//this.itemDaoFactory = new ItemDao4MySqlFactory();
}
public static ItemManager getInstance() {
return instance;
}
/**
* 添加物料,调用Dao实现类
* @param item
*/
public void addItem(Item item) {
Connection conn = null;
try {
conn = DB.getConn();
this.itemDaoFactory.createItemDao().addItem(conn, item);
}finally {
DB.closeConn(conn);
}
}
/**
* 修改物料,调用Dao实现类
* @param item
*/
public void modifyItem(Item item) {
Connection conn = null;
try {
conn = DB.getConn();
this.itemDaoFactory.createItemDao().modifyItem(conn, item);
}finally {
DB.closeConn(conn);
}
}
/**
* 删除物料,调用Dao实现类
* @param item
*/
public void deleteItemById(String itemNo) {
Connection conn = null;
try {
conn = DB.getConn();
this.itemDaoFactory.createItemDao().deleteItemById(conn, itemNo);
}catch(AppException e) {
throw e;
}catch(Exception e) {
throw new AppException("增加物料失败");
}finally {
DB.closeConn(conn);
}
}
/**
* 查询所有的物料,调用Dao实现类
* @param item
*/
public PageModel findAllItem(int pageNo, int pageSize, String queryStr) {
Connection conn = null;
PageModel pageModel = null;
try {
conn = DB.getConn();
pageModel = this.itemDaoFactory.createItemDao().findAllItem(pageNo, pageSize, queryStr);
}finally {
DB.closeConn(conn);
}
return pageModel;
}
/**
* 根据Id查询物料,调用Dao实现类
* @param item
*/
public Item findItemById(String itemNo) {
Connection conn = null;
Item item = null;
try {
conn = DB.getConn();
item = this.itemDaoFactory.createItemDao().findItemById(itemNo);
}finally {
DB.closeConn(conn);
}
return item;
}
private Properties loadProperties() {
Properties props = new Properties();
//getClass().getResourceAsStream(name)
InputStream is = ItemManager.class.getResourceAsStream("factory-class-mapping.properties");
try {
props.load(is);
is.close();
} catch (IOException e) {
e.printStackTrace();
}
return props;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -