大家帮个忙!struts2批量上传图片到数据库报错

问题描述

SQLServer2005createdatabaseBigObjectgouseBigObjectgocreatetableusers(idintidentityprimarykey,namevarchar(10)notnull,photoimagenotnull)只用Struts2框架实体Beanpackagecom.db;importjava.io.File;publicclassUser{privateintid;privateStringname;privateFilephoto;publicintgetId(){returnid;}publicvoidsetId(intid){this.id=id;}publicStringgetName(){returnname;}publicvoidsetName(Stringname){this.name=name;}publicFilegetPhoto(){returnphoto;}publicvoidsetPhoto(Filephoto){this.photo=photo;}}逻辑方法packagecom.biz;importjava.util.ArrayList;importjava.util.List;importcom.db.User;importcom.biz.*;publicclassUserAction{privateList<User>users=newArrayList<User>();publicList<User>getUsers(){returnusers;}publicvoidsetUsers(List<User>users){this.users=users;}publicStringsave(){UserImplui=newUserImpl();//插入数据库if(ui.savePhoto(users)){return"s";}else{return"e";}}}插入数据库逻辑方法packagecom.biz;importcom.db.*;importjava.io.File;importjava.io.FileInputStream;importjava.sql.*;importjava.util.List;importsun.jdbc.odbc.JdbcOdbcDriver;publicclassUserImpl{publicbooleansavePhoto(List<User>users){try{Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");Connectioncnn=DriverManager.getConnection("jdbc:sqlserver://localhost:1433;DataBaseName=BigObject","sa","sa");for(inti=0;i<users.size();++i){Useruser=users.get(i);PreparedStatementpstmt=cnn.prepareStatement("insertusersvalues(?,?)");pstmt.setString(1,user.getName());Filephoto=user.getPhoto();FileInputStreamin=newFileInputStream(photo);pstmt.setBinaryStream(2,in,in.available());pstmt.execute();}returntrue;}catch(Exceptionex){System.out.println(ex.getMessage());}returnfalse;}}JSP页面<%@pagecontentType="text/html;charset=gbk"%><html><head></head><body><formaction="/upLoad/userAction"method="post"enctype="multipart/form-data"><inputtype="text"name="users.user.name"><br><inputtype="file"name="users.user.photo"><br><inputtype="text"name="users.user.name"><br><inputtype="file"name="users.user.photo"><br><inputtype="submit"value="提交"></form></body></html>exampl.xml文件<?xmlversion="1.0"encoding="UTF-8"?><!DOCTYPEstrutsPUBLIC"-//ApacheSoftwareFoundation//DTDStrutsConfiguration2.0//EN""http://struts.apache.org/dtds/struts-2.0.dtd"><struts><packagename="example"namespace="/"extends="struts-default"><actionname="userAction"class="com.biz.UserAction"method="save"><resultname="s">/success.jsp</result><resultname="e">/index.jsp</result></action></package></struts>报错2009-8-319:59:56com.opensymphony.xwork2.util.logging.commons.CommonsLoggerinfo信息:Unabletofind'struts.multipart.saveDir'propertysetting.Defaultingtojavax.servlet.context.tempdir2009-8-319:59:57com.opensymphony.xwork2.util.logging.commons.CommonsLoggerwarn警告:Errorsettingvalueognl.NoSuchPropertyException:java.util.ArrayList.useratognl.ObjectPropertyAccessor.getProperty(ObjectPropertyAccessor.java:122)atognl.ListPropertyAccessor.getProperty(ListPropertyAccessor.java:60)atcom.opensymphony.xwork2.ognl.accessor.XWorkListPropertyAccessor.getProperty(XWorkListPropertyAccessor.java:71)atognl.OgnlRuntime.getProperty(OgnlRuntime.java:1643)atognl.ASTProperty.getValueBody(ASTProperty.java:92)atognl.SimpleNode.evaluateGetValueBody(SimpleNode.java:170)atognl.SimpleNode.getValue(SimpleNode.java:210)atognl.ASTChain.setValueBody(ASTChain.java:168)atognl.SimpleNode.evaluateSetValueBody(SimpleNode.java:177)atognl.SimpleNode.setValue(SimpleNode.java:246)atognl.Ognl.setValue(Ognl.java:476)atcom.opensymphony.xwork2.ognl.OgnlUtil.setValue(OgnlUtil.java:192)atcom.opensymphony.xwork2.ognl.OgnlValueStack.setValue(OgnlValueStack.java:155)atcom.opensymphony.xwork2.ognl.OgnlValueStack.setValue(OgnlValueStack.java:143)atcom.opensymphony.xwork2.interceptor.ParametersInterceptor.setParameters

时间: 2024-09-13 15:01:29

大家帮个忙!struts2批量上传图片到数据库报错的相关文章

wcf-初次接触WCF 哪位大神帮帮忙,C#的 WCF启动服务报错怎么改

问题描述 初次接触WCF 哪位大神帮帮忙,C#的 WCF启动服务报错怎么改 请尝试将 HTTP 端口更改为 8733 或以管理员身份运行. System.ServiceModel.AddressAccessDeniedException: HTTP 无法注册 URL http://+:8733/WcfServiceLibraryForfamily/Service1/.进程不具有此命名空间的访问权限(有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkId

struts2+spring+mybatis 程序不报错,但是数据无法写入数据库

问题描述 struts2+spring+mybatis 程序不报错,但是数据无法写入数据库 执行到service 无法写入数据库,不报错.代码如下: <?xml version=""1.0"" encoding=""utf-8"" ?><!DOCTYPE mapper PUBLIC ""-//mybatis.org//DTD Mapper 3.0//EN""http:/

tomcat-JAVA问题:初学Struts2框架遇到的浏览器报错

问题描述 JAVA问题:初学Struts2框架遇到的浏览器报错 现在是验证Struts2的参数接收,但是页面直接就显示不出来 一:JSP页面----------> 二:XML配置----------> 三:控制器类--------------> 四:TomCat没有报错,浏览器报404找不者 解决方案 你的页面用的action路径Can/user_save,而你的Action配置路径是C_method的名称,不匹配啊. 修正你的action的配置,统一一下呗. 解决方案二: 你的问题是s

MyBatis MapperProvider MessageFormat拼接批量SQL语句执行报错的原因分析及解决办法_MsSql

最近在项目中有这么一段代码:下载服务器基础业务数据进行本地批量插入操作,因项目中使用mybatis进行持久化操作,故直接考虑使用mybatis的批量插入功能. 1.以下是Mapper接口的部分代码 public interface PrintMapper { @InsertProvider(type = PrintMapperProvider.class,method = "insertAllLotWithVehicleCode4H2") void insertAllLotWithVe

Struts2 配置文件中传参报错,大家帮忙看看,急

问题描述 这是STRUTS的配置:<action name="addLine" class="action.MetroLineAction" method="addLine"><result name="success" type="redirect">getLines?cityArea=${cityArea}</result></action>ACTION中

spring3.1.1+ibatis3.1.1+struts2.2.3框架搭建报错

问题描述 我的 applicationContext.xml <?xml version="1.0" encoding="UTF-8" ?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://ww

Dedecms图集批量上传提示报错 302

错误提醒 后来在百度搜索了一下原理是版本的问题我们需要加以判断即可解决. 解决办法 在include/userlogin.class.php文件中的第二行session_start();前加上    代码如下 复制代码 if (isset($_POST["PHPSESSID"])) {  session_id($_POST["PHPSESSID"]);  } else if (isset($_GET["PHPSESSID"])) {  sessi

struts2.0-struts2 redirect在myeclipse里报错,但是可以正常使用,这是为什么呢?

问题描述 struts2 redirect在myeclipse里报错,但是可以正常使用,这是为什么呢? 解决方案 IDE工具的问题.既然程序OK,还关系这个干什么.多半是myeclipse struts2插件的问题.可以看下myexlipse的配置选项中是不是有什么语法检查设置. 还是用intellj idea 畅快! myeclipse有点厚重了

struts2.0-struts2 网页跳转不过来求大神给帮个忙

问题描述 struts2 网页跳转不过来求大神给帮个忙 1.注册网页 欢迎来次注册账号 账号: 密码: 姓名: 地址: 工作单位: 2.struts.xml配置 /CaraLogin.jsp/pages1/Register.jsp 3.java类 (1) package com.JDBC.card; import java.sql.*; public class JdbcCard { String driverName ="com.mysql.jdbc.Driver"; String