sql = "UPDATE student SET photo=? WHERE number=?";
PreparedStatement ps = conn.prepareStatement(sql);
ps.setBinaryStream(1, is, is.available());//輸入照片流 InputStream
ps.setString(2, user.getAccount());
ps.execute();
String result = JSONArray.fromObject(list).toString();
org.apache.commons.dbutils.QueryRunner
runner.batch(conn, sql, param[][]); list內的對象,對象內的屬性,所以是二維數組
runner.batch(sql, param);//Object[][] param
runner.query(sql, new BeanHandler(type), param); 它將?封裝爲param,按照順序自動補充的;
SELECT * FROM teacher ORDER BY id DESC LIMIT ?,?
static 有種全局變量的味道,也就是類加載賦初值,
這是input流寫入字符
InputStream is = service.getPhoto(user);
if(is != null){
byte[] b = new byte[is.available()];
is.read(b);
response.getOutputStream().write(b, 0, b.length);
}
ajax寫法
var data = {'name': name, 'value': value};
$.ajax({
type: "post",
url: "SystemServlet?method=EditSystemInfo&t="+new Date().getTime(),
data: data,
success: function(msg){
if(msg == "success"){
$.messager.alert("消息提醒","保存成功","info");
}
}
});
大概是解析
success: function(result){
console.log(result);
var columns = [];
$.each(result, function(i, course){
var column={};
column["field"] = "course"+course.id;
column["title"] = course.name;
column["width"] = 70;
column["resizable"] = false;
column["sortable"] = true;
columns.push(column);//當需要formatter的時候自己添加就可以了,原理就是拼接字符串.
});