使用List集合形式的参数的批量 *** 作
如果使用List集合来进行批量 *** 作,首先要把待添加的数据与实体类对应(一个实体类通常对应数据库里的一张表, 下面的例子中Actor类就是一个实体类, 它对应了数据库中的 "t_actor"数据表).
比如"t_actor"数据表中有id,first_name,last_name三个字段, 那么对应Actor类就要有id, firstName, lastName属性, 且都得有getter, setter方法.
spring jdbc core 包中提供了一个SqlParamterSource 对象,这个对象用于SQL语句参数的设置.
使用SqlParameterSourceUtils.createBatch这个方法,把javabean(即上面说的实体类)的list 转化成array,spring会循环的进行取值;
public class JdbcActorDao implements ActorDao {private NamedParameterTemplate namedParameterJdbcTemplate
public void setDataSource(DataSource dataSource) {
this.namedParameterJdbcTemplate = new NamedParameterJdbcTemplate(dataSource)
}
public int[] batchUpdate(final List<Actor> actors) {
SqlParameterSource[] batch = SqlParameterSourceUtils.createBatch(actors.toArray())
int[] insertCounts = namedParameterJdbcTemplate.batchUpdate(
"INSERT INTO t_actor (id,first_name,last_name) VALUES(:id,:firstName, :lastName )",batch)
return insertCounts
}
// ... additional methods
}
http://www.tuicool.com/articles/Ar6RNr
表单数据都保存在http的正文部分,各个表单项之间用boundary隔开。
格式类似于下面这样:用request.getParameter是取不到数据的,这时需要通过request.getInputStream来取数据,不过取到的是个InputStream,所以无法直接获取指定的表单项(需要自己对取到的流进行解析,才能得到表单项以及上传的文件内容等信息)。
这种需求属于比较共通的功能,所以有很多开源的组件可以直接利用,比如:apache的fileupload组件,smartupload等。
通过这些开源的upload组件提供的API,就可以直接从request中取得指定的表单项了。
一、php配置MySQL1、将php安装目录下的php_mysql.dll和MySQL安装目录下的libmysql.dll文件拷贝至c:/windows/system32中;
2、配置php.ini
extension=php_gd2.dll
extension=php_mbstring.dll
extension=php_mysql.dll
extension=php_mysqli.dll
把上面四个。dll的最前面的;去掉
二、php表单提交至数据库的实现过程
1、login.php页面
<SPAN style="FONT-SIZE: 14px"><html>
<FORM method=post action=add.php>
Name: <INPUT name=username><BR>
Email: <INPUT name=email><BR>
<INPUT value=提交 type=submit name=submit>
</FORM>
</SPAN>
2、add.php页面
<SPAN style="FONT-SIZE: 14px"><?php
include("conn.php");
?>
<?php
if(isset($_POST["submit"]))
{
$sql = "insert into users(username, email) values('$_POST[username]', '$_POST[email]')"
mysqli_query($conn, $sql);
echo "添加成功"
}
?></SPAN>
3、conn.php页面
<SPAN style="FONT-SIZE: 14px"><?php
$conn = new mysqli("localhost", "root", "159357");
$conn->select_db("db_test");
//mysql_query("set name 'gb2312'");
$conn->set_charset("utf8");
?></SPAN>
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)