attachment.java
来自「一个用java编写的功能强大的OA系统」· Java 代码 · 共 215 行
JAVA
215 行
package com.redmoon.oa.workplan;import java.io.File;import java.sql.*;import cn.js.fan.db.Conn;import cn.js.fan.web.Global;import org.apache.log4j.Logger;public class Attachment implements java.io.Serializable { int id; int workPlanId; String name; String fullPath; String diskName; String visualPath; String connname; String LOAD = "SELECT workPlanId, name, fullpath, diskname, visualpath, orders FROM work_plan_attach WHERE id=?"; String SAVE = "update work_plan_attach set workPlanId=?, name=?, fullpath=?, diskname=?, visualpath=?, orders=? WHERE id=?"; Logger logger = Logger.getLogger(Attachment.class.getName()); public Attachment() { connname = Global.defaultDB; } public Attachment(int id) { connname = Global.defaultDB; if (connname.equals("")) logger.info("Attachment:默认数据库名为空!"); this.id = id; loadFromDb(); } public boolean create() { String sql = "insert into work_plan_attach (fullpath,workPlanId,name,diskname,visualpath,orders) values (?,?,?,?,?,?)"; Conn conn = new Conn(connname); boolean re = false; try { PreparedStatement pstmt = conn.prepareStatement(sql); pstmt.setString(1, fullPath); pstmt.setInt(2, workPlanId); pstmt.setString(3, name); pstmt.setString(4, diskName); pstmt.setString(5, visualPath); pstmt.setInt(6, orders); re = conn.executePreUpdate()==1?true:false; } catch (SQLException e) { logger.error("create:" + e.getMessage()); } finally { if (conn!=null) { conn.close(); conn = null; } } return re; } public boolean del() { String sql = "delete from work_plan_attach where id=?"; Conn conn = new Conn(connname); boolean re = false; try { PreparedStatement pstmt = conn.prepareStatement(sql); pstmt.setInt(1, id); re = conn.executePreUpdate()==1?true:false; } catch (SQLException e) { logger.error("del:" + e.getMessage()); return false; } finally { if (conn!=null) { conn.close(); conn = null; } } File fl = new File(this.fullPath); fl.delete(); return re; } public boolean save() { Conn conn = new Conn(connname); boolean re = false; try { PreparedStatement pstmt = conn.prepareStatement(SAVE); pstmt.setInt(1, workPlanId); pstmt.setString(2, name); pstmt.setString(3, fullPath); pstmt.setString(4, diskName); pstmt.setString(5, visualPath); pstmt.setInt(6, orders); pstmt.setInt(7, id); re = conn.executePreUpdate()==1?true:false; } catch (SQLException e) { logger.error(e.getMessage()); } finally { if (conn!=null) { conn.close(); conn = null; } } return re; } public int getId() { return this.id; } public void setId(int id) { this.id = id; } public int getWorkPlanId() { return this.workPlanId; } public void setWorkPlanId(int id) { this.workPlanId = id; } public String getName() { return this.name; } public void setName(String name) { this.name = name; } public String getDiskName() { return this.diskName; } public void setDiskName(String dn) { this.diskName = dn; } public String getFullPath() { return this.fullPath; } public void setFullPath(String f) { this.fullPath = f; } public String getVisualPath() { return this.visualPath; } public int getOrders() { return orders; } public boolean isLoaded() { return loaded; } public void setVisualPath(String vp) { this.visualPath = vp; } public void setOrders(int orders) { this.orders = orders; } public void setLoaded(boolean loaded) { this.loaded = loaded; } public void loadFromDb() { Conn conn = new Conn(connname); PreparedStatement pstmt = null; ResultSet rs = null; try { pstmt = conn.prepareStatement(LOAD); pstmt.setInt(1, id); rs = conn.executePreQuery(); if (rs != null && rs.next()) { workPlanId = rs.getInt(1); name = rs.getString(2); fullPath = rs.getString(3); diskName = rs.getString(4); visualPath = rs.getString(5); orders = rs.getInt(6); loaded = true; } } catch (SQLException e) { logger.error(e.getMessage()); } finally { if (rs != null) { try { rs.close(); } catch (Exception e) {} rs = null; } if (conn != null) { conn.close(); conn = null; } } } private int orders = 0; private boolean loaded = false;}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?