前期准备
1.开发环境及框架的搭建。(基于SSH开发框架)
2.数据库建表,表应该有一个字段用来存储文件在服务区上的存储路径。
3.map.xml文件
4.Action.xml文件
5.写好实体类及get()set()方法
6.DAO层
7.Action()实现,Action()里面需要实现文件的上传服务器功能和路径存储数据库功能。
8.前端页面,前端页面需要实现文件的选择功能。
具体实例展示
1.数据库建表
其中image字段用来存储文件在服务器上的存储路径。
2.增删查改(map.xml文件)
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "sql-map-2.dtd">
<sqlMap>
<!-- Start -->
<typeAlias alias="finishwinewl" type="com.qkj.finishwinewl.bean.finishwinewlBean" />
<select id="finishwinewl_getfinishwinewl" resultClass="finishwinewl" parameterClass="java.util.Map">
<![CDATA[
Select * From qkj_t_finishwinewl
]]>
<dynamic prepend="WHERE"><!--所有查询项目-->
<isNotNull prepend="AND" property="uuid"><![CDATA[ uuid=#uuid# ]]></isNotNull>
</dynamic>
</select>
<insert id="finishwinewl_addfinishwinewl" parameterClass="finishwinewl">
<![CDATA[
Insert Into qkj_t_finishwinewl (fid,code,fragrance,detection_info,quality_standard,retail_price,tasting_info,drinking_method,introduction,name,image,report_number)
Values (#fid#,#code#,#fragrance#,#detection_info#,#quality_standard#,#retail_price#,#tasting_info#,#drinking_method#,#introduction#,#name#,#image#,#report_number#)
]]>
<selectKey resultClass="int" keyProperty="uuid">
<![CDATA[
Select @@IDENTITY
]]>
</selectKey>
</insert>
<update id="finishwinewl_mdyfinishwinewl" parameterClass="finishwinewl">
<![CDATA[
Update qkj_t_finishwinewl
Set
fid=#fid#,
code=#code#,
fragrance=#fragrance#,
detection_info=#detection_info#,
quality_standard=#quality_standard#,
retail_price=#retail_price#,
tasting_info=#tasting_info#,
drinking_method=#drinking_method#,
introduction=#introduction#,
report_number=#report_number#,
name=#name#,
image=#image# Where uuid = #uuid#
]]>
</update>
<delete id="finishwinewl_delfinishwinewl" parameterClass="finishwinewl">
<![CDATA[
Delete From qkj_t_finishwinewl Where uuid=#uuid#
]]>
</delete>
<!-- End -->
</sqlMap>
3.dao层
package com.qkj.finishwinewl.dao;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.iweb.sys.AbstractDAO;
/**
* @author xiaoyan
*
*/
public class finishwinewlDao extends AbstractDAO{
public List list(Map<String, Object> map) {
return super.list("finishwinewl_getfinishwinewl", map);
}
public Object get(Object uuid) {
Map<String, Object> map = new HashMap<String, Object>();
map.put("uuid", uuid);
return super.get("finishwinewl_getfinishwinewl", map);
}
public Object add(Object parameters) {
return super.add("finishwinewl_addfinishwinewl", parameters);
}
public int save(Object parameters) {
return super.save("finishwinewl_mdyfinishwinewl", parameters);
}
public int delete(Object parameters) {
return super.delete("finishwinewl_delfinishwinewl", parameters);
}
public int getResultCount() {
return super.getResultCount();
}
}
4.Action实现
package com.qkj.finishwinewl.action;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.struts2.ServletActionContext;
import org.iweb.sys.ContextHelper;
import org.iweb.sys.Parameters;
import org.iweb.sys.ToolsUtil;
import com.opensymphony.xwork2.ActionSupport;
import com.qkj.finishwinewl.dao.finishwinewlDao;
import com.qkj.finishwinewl.bean.finishwinewlBean;
/**
* @author yanluhai
*
*/
public class finishwinewlAction extends ActionSupport{
private static final long serialVersionUID = 1L;
private static Log log = LogFactory.getLog(finishwinewlAction.class);
private Map<String, Object> map = new HashMap<String, Object>();
private finishwinewlDao dao = new finishwinewlDao();
private finishwinewlBean finishwinewl;
private List<finishwinewlBean> finishwinewls;
private String message;
private String viewFlag;
private int recCount;
private int pageSize;
private int currPage;
private String path = "<a href='/manager/default'>首页</a> > 列表";
private String [] imageUpload;
private File fileUpload;
private String fileUploadFileName; // 文件名+FileName
public File getFileUpload() {
return fileUpload;
}
public void setFileUpload(File fileUpload) {
this.fileUpload = fileUpload;
}
public static Log getLog() {
return log;
}
public static void setLog(Log log) {
finishwinewlAction.log = log;
}
public Map<String, Object> getMap() {
return map;
}
public void setMap(Map<String, Object> map) {
this.map = map;
}
public finishwinewlDao getDao() {
return dao;
}
public void setDao(finishwinewlDao dao) {
this.dao = dao;
}
public finishwinewlBean getFinishwinewl() {
return finishwinewl;
}
public void setFinishwinewl(finishwinewlBean finishwinewl) {
this.finishwinewl = finishwinewl;
}
public List<finishwinewlBean> getFinishwinewls() {
return finishwinewls;
}
public void setFinishwinewls(List<finishwinewlBean> finishwinewls) {
this.finishwinewls = finishwinewls;
}
public String getMessage() {
return m