ssh 上传图片实现

java action:

package com.metarnet.action;


import java.io.File;
import java.io.IOException;


import org.apache.commons.io.FileUtils;
import org.apache.log4j.Logger;
import org.apache.struts2.ServletActionContext;


import com.metarnet.model.Json;
import com.metarnet.model.User;
import com.metarnet.model.XueYuan;
import com.metarnet.service.UserManager;
import com.metarnet.service.XueYuanManager;
import com.metarnet.util.ExceptionUtil;
import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ModelDriven;


public class XueYuanAction extends BaseAction implements ModelDriven<XueYuan> {


private static final long serialVersionUID = 6691953659316604810L;
private XueYuanManager xueYuanManager;
private XueYuan xueYuan = new XueYuan();
Logger metarnetos_log = Logger.getLogger(getClass());
private User user;
private UserManager userManager;


public UserManager getUserManager() {
return userManager;
}


public void setUserManager(UserManager userManager) {
this.userManager = userManager;
}


public XueYuanManager getXueYuanManager() {
return xueYuanManager;
}


public void setXueYuanManager(XueYuanManager xueYuanManager) {
this.xueYuanManager = xueYuanManager;
}


public XueYuan getXueYuan() {
return xueYuan;
}


public void setXueYuan(XueYuan xueYuan) {
this.xueYuan = xueYuan;
}


public XueYuan getModel() {
return xueYuan;
}


public User getUser() {
return user;
}


public void setUser(User user) {
this.user = user;
}


/**
* 跳转到页面

* @return
*/
public String xueyuanReq() {
return SUCCESS;
}


/**
* 跳转到查看页面

* @return
*/
public String sXueYuan() {
return SUCCESS;
}


/**
* 获得用户datagrid
*/
public void datagrid() {
writeJson(xueYuanManager.datagrid(xueYuan));
}


/**
* 添加
*/
public void add() {
Json j = new Json();
//设置头像
getGetImage();
try {
String msgs = xueYuanManager.add(xueYuan);
if (!msgs.equals("")) {
j.setMsg(msgs);
} else {
xueYuanManager.adduser(xueYuan.getXingming());
xueYuanManager.adduserrole(xueYuan.getXingming());
j.setMsg("添加成功!");
}
j.setSuccess(true);
} catch (Exception e) {
j.setMsg("添加失败!");
metarnetos_log.error(ExceptionUtil.getExceptionMessage(e));
}
writeJson(j);
}
    
/**
* 上传头像
* */
public void getGetImage() {


// 头像处理


File upTouXiang = xueYuan.getTouxiang();


if (upTouXiang != null) {
            
String RealPath = ServletActionContext.getServletContext()
.getRealPath("/album");
File file = new File(RealPath);
if (!file.exists()) {
file.mkdirs();
}
try {
FileUtils.copyFile(upTouXiang,
new File(file, xueYuan.getXueyuanid() + ".jpg"));
} catch (IOException e) {
e.printStackTrace();
}
String path = RealPath + "/" + xueYuan.getXueyuanid();
ServletActionContext.getRequest().setAttribute("realpath", path);
//将头像地址保存数据库
xueYuan.setTouxiangdizhi(xueYuan.getXueyuanid() + ".jpg");
}
}


/**
* 编辑
*/
public void edit() {
Json j = new Json();
//设置头像
getGetImage();
try {
String msgs = xueYuanManager.edit(xueYuan);
j.setSuccess(true);
if (!msgs.equals("")) {
j.setMsg(msgs);
} else {
j.setMsg("编辑成功!");
}
} catch (Exception e) {
metarnetos_log.error(ExceptionUtil.getExceptionMessage(e));
j.setMsg("编辑失败!");
}
writeJson(j);
}


/**
* 删除
*/
public void delete() {
Json j = new Json();
// String id=xueYuan.getIds();
xueYuanManager.delete(xueYuan.getIds());
j.setSuccess(true);
writeJson(j);
}


/**
* 获得班级下拉列表
*/
public void qiBanCombobox() {
writeJson(xueYuanManager.combobox());
}


/**
* 单独页面
*/
public String selectXueYuan() {
/*
* String flag=ServletActionContext.getRequest().getParameter("flag");
* if(flag!=null&&flag.equals("1")){

* xueYuanManager.editByName(xueYuan); }
*/


try {
xueYuan = xueYuanManager.selectByName();
} catch (Exception e) {
return "noXueYuan";
}
ServletActionContext.getRequest().setAttribute("table", xueYuan);
return SUCCESS;
}


public String editByName() {
xueYuanManager.editByName(xueYuan);
ServletActionContext.getRequest().setAttribute("table", xueYuan);
return SUCCESS;
}


/**
* 从主页面学生个人注册

* @return
*/
public String xueyuanReg() {
Json j = new Json();
try {
String msgs = xueYuanManager.add(xueYuan);
if (!msgs.equals("")) {
j.setMsg(msgs);
} else {
xueYuanManager.adduser(xueYuan.getXingming());
xueYuanManager.adduserrole(xueYuan.getXingming());
j.setMsg("添加成功!");
}
j.setSuccess(true);
} catch (Exception e) {
j.setMsg("添加失败!");
metarnetos_log.error(ExceptionUtil.getExceptionMessage(e));
}
// writeJson(j);
ServletActionContext.getRequest().setAttribute("msg", j.getMsg());
return SUCCESS;
}
}

html  and jsp:

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<title>XueYuanManager</title>
<jsp:include page="../inc.jsp"></jsp:include>
<script language="javascript" type="text/javascript"
src="../check/moble.js"></script>
<script language="javascript" type="text/javascript"
src="../check/postcode.js"></script>
<script language="javascript" type="text/javascript"
src="../check/qq5.js"></script>
<style>
#topwenzi {opacity:0;
filter: alpha(opacity: 
0 );
position: absolute;
top: -99999px;
right: 0px;
width: 0px;
height: 0px;
z-index
}
</style>
<script type="text/javascript" charset="utf-8">
var searchForm;
var editRow = undefined;
var datagrid;
var addAndEditScenarioForm;
var addAndEditScenarioDialog;
$(function() {
searchForm = $('#searchForm').form();


addAndEditScenarioForm = $('#addAndEditScenarioForm').form();
addAndEditScenarioDialog = $('#addAndEditScenarioDialog').show()
.dialog({
modal : true,
buttons : [ {
text : '确定',
handler : function() {


$('#addAndEditScenarioForm').form('submit', {
url : url,
onSubmit : function() {
return $(this).form('validate');
},
success : function(data) {


var d = $.parseJSON(data);
addAndEditScenarioDialog.dialog('close');
$('#datagrid').datagrid('reload');
editRow = undefined;
resetContent('addAndEditScenarioForm');
datagrid.datagrid('unselectAll');
$.messager.show({
msg : d.msg,
title : '提示'
});
}
});
}
} ]
}).dialog('close');


datagrid = $('#datagrid')
.datagrid(
{
url : 'datagridXueYuan',
/*title : '用户列表(admin拥有所有权限,不需要更改角色)',*/
iconCls : 'icon-save',
pagination : true,
pagePosition : 'bottom',
pageSize : 10,
pageList : [ 10, 20, 30, 40 ],
fit : true,
fitColumns : false,
striped : true,
nowrap : false,
border : false,
idField : 'xueyuanid',
sortName : 'xingming',
sortOrder : 'desc',
striped : true,
frozenColumns : [ [ {
title : '编号',
field : 'xueyuanid',
width : 100,
sortable : true,
checkbox : true
}, {
title : '姓名',
field : 'xingming',
width : 100,
sortable : true,
editor : {
type : 'validatebox',
options : {
required : true
}
}
} ] ],
columns : [ [ {
title : '期班',
field : 'qibanmingcheng',
width : 100,
sortable : true,
editor : {
type : 'validatebox',


}
}, {
title : '学号',
field : 'xuehao',
width : 100,
sortable : true,
editor : {
type : 'validatebox',
options : {
required : true
}
}
}, {
title : '部职别',
field : 'zhiwu',
width : 200,
sortable : true,
editor : {
type : 'validatebox'
}
}, {
title : '军衔',
field : 'junxian',
width : 100,
sortable : true,
editor : {
type : 'validatebox'
}
}, {
title : '专业',
field : 'zhuanye',
width : 100,
sortable : true,
editor : {
type : 'validatebox'
}
}, {
title : '手机号',
field : 'shoujihao',
width : 100,
sortable : true,
editor : {
type : 'validatebox'
}
} ] ],
toolbar : [
{
text : '增加',
iconCls : 'icon-add',
handler : function() {
resetContent('addAndEditScenarioForm');
add();
document.getElementById('xingming')
.focus();
}
},
'-',
{
text : '删除',
iconCls : 'icon-remove',
handler : function() {
del();
}
},
'-',
{
text : '修改',
iconCls : 'icon-edit',
handler : function() {
resetContent('addAndEditScenarioForm');
edit();
document.getElementById('xingming')
.focus();
datagrid.datagrid('unselectAll');
datagrid
.parent()
.find(
"div .datagrid-header-check")
.children(
"input[type='checkbox']")
.eq(0).attr("checked",
false);
}
},
'-',
{
text : '取消选中',
iconCls : 'icon-undo',
handler : function() {
datagrid.datagrid('unselectAll');
datagrid
.parent()
.find(
"div .datagrid-header-check")
.children(
"input[type='checkbox']")
.eq(0).attr("checked",
false);
}
}, '-' ],
onDblClickRow : function(rowIndex, rowData) {
resetContent('addAndEditScenarioForm');
edit();
document.getElementById('xingming').focus();
datagrid.datagrid('unselectAll');
datagrid.parent().find(
"div .datagrid-header-check").children(
"input[type='checkbox']").eq(0).attr(
"checked", false);
}


});


});


function _search() {
datagrid.datagrid('load', sy.serializeObject(searchForm));
}
function cleanSearch() {
datagrid.datagrid('load', {});
searchForm.find('input').val('');
}


function add() {
if (sy.isAuth("dialogAddXueYuan")) {
addAndEditScenarioDialog.dialog('open').dialog('setTitle', '注册信息');


//addAndEditScenarioForm.find('input').val('');
url = 'addXueYuan';
/*
datagrid.datagrid('unselectAll');
var row = {
xueyuanid : sy.UUID()
};
datagrid.datagrid('appendRow', row);
editRow = datagrid.datagrid('getRows').length - 1;
datagrid.datagrid('selectRow', editRow);
datagrid.datagrid('beginEdit', editRow);
*/
}
}


function del() {
var rows = datagrid.datagrid('getSelections');
var ids = [];
if (rows.length > 0) {
$.messager.confirm('请确认', '您要删除当前所选项目?', function(r) {
if (r) {
for ( var i = 0; i < rows.length; i++) {
ids.push(rows[i].xueyuanid);
}
$.ajax({
url : 'deleteXueYuan',
data : {
ids : ids.join(',')
},
dataType : 'json',
success : function(response) {
datagrid.datagrid('load');
datagrid.datagrid('unselectAll');
$.messager.show({
title : '提示',
msg : '删除成功!'
});
datagrid.datagrid('unselectAll');
datagrid.datagrid('rejectChanges');
datagrid.parent()
.find("div .datagrid-header-check")
.children("input[type='checkbox']").eq(0)
.attr("checked", false);
}
});
}
});
} else {
$.messager.alert('提示', '请选择要删除的记录!', 'error');
}
}
function edit() {
if (sy.isAuth("dialogEditXueYuan")) {
var rows = datagrid.datagrid('getSelected');
var r = datagrid.datagrid('getSelections');
if (r.length == 1) {
if (rows) {
addAndEditScenarioDialog.dialog('open').dialog('setTitle',
'注册信息');
$('#addAndEditScenarioForm').form('load', rows);
url = 'editXueYuan';
} else {
$.messager.show({
msg : '请选择一项进行修改!',
title : '错误'
});
}
} else {
$.messager.show({
msg : '只能选择一项进行修改!',
title : '错误'
});


}
}
}
//头像上传
function addAvatar() {
//if (sy.isAuth("dialogEditXueYuan")) {
var addAvatarDialog = $('#addAvatarDialog').show();
addAvatarDialog.dialog('open').dialog('setTitle', '头像上传');;
//.dialog('open')
// .dialog('setTitle', '头像上传');
// addAvatarDialog
//$('#addAvatarForm').form('load');


//}
}


function resetContent(formId) {
var clearForm = document.getElementById(formId);
if (null != clearForm && typeof (clearForm) != "undefined") {
clearForm.reset();
}
}
$(document).ready(function() {


/* //相当于select的onchange事件  
$('#buzhibie').combo({
onChange : function(newValue, oldValue) {
if (newValue != '空值' && newValue != '其他') {
$("#shiyuanlv").css('display', 'block');


}
}
}); */
});
</script>
</head>
<body class="easyui-layout">
<div region="north" border="false" title="查询条件"
style="height: 60px; overflow: hidden;" align="left">
<form id="searchForm">
<table class="tableForm datagrid-toolbar"
style="width: 100%; height: 100%;">
<tr>
<td><label>姓&nbsp;&nbsp;名:</label><input name="xingming"
style="width: 120px;" />&nbsp;&nbsp;&nbsp;&nbsp; <label>学&nbsp;&nbsp;号:</label><input
name="xuehao" style="width: 120px;" maxlength="11" />&nbsp;&nbsp;&nbsp;&nbsp;
<label>期班名称:</label> <input name="qibanmingcheng"
style="width: 120px;" /> <a href="javascript:void(0);"
class="easyui-linkbutton" οnclick="_search();">查询</a> <a
href="javascript:void(0);" class="easyui-linkbutton"
οnclick="cleanSearch();">无条件查询</a></td>
</tr>
</table>
</form>
</div>
<div region="center" border="false">
<table id="datagrid"></table>
</div>
<div id="menu" class="easyui-menu" style="width: 120px; display: none;">
<div οnclick="add();" iconCls="icon-add">增加</div>
<div οnclick="del();" iconCls="icon-remove">删除</div>
<div οnclick="edit();" iconCls="icon-edit">编辑</div>
</div>


<!--学员注册form -->
<div id="addAndEditScenarioDialog"
style="width: 1000px; height: 450px;">
<form id="addAndEditScenarioForm" method="post" enctype="multipart/form-data">
<div id="p1" class="easyui-panel" style="width: 970px;"
data-options="title:'基本信息',iconCls:'icon-save',collapsible:true">
<table class="tableForm" style="width: 100%;" align="center" border="1">
<tr>
<td><label>姓名</label></td>
<td><input type="text" name="xingming" id="xingming"
class="easyui-validatebox" data-options="required:true"
editable="false" /></td>
<td><label>性别</label></td>
<td><select name="xingbie" class="easyui-combobox"
data-options="panelHeight:'auto'" editable="false">
<option value="男">男</option>
<option value="女">女</option>
</select></td>
<td><label>学号</label></td>
<td><input type="text" name="xuehao" maxlength="11"
class="easyui-validatebox" data-options="required:true"
editable="false" style="width: 150px;" /></td>
<td><label>籍贯</label></td>
<td><input type="text" class="easyui-text" name="jiguan"
style="width: 122px;" /></td>

<td rowspan="3" style="width:100px"><img src='图片路径' name="touxiangdizhi"></td>
</tr>
<tr>
<td><label>期班</label></td>
<td><input class="easyui-combobox" name="qibanmingcheng"
data-options="
url:'qiBanCombobox',
valueField:'qibanmingcheng',
textField:'qibanmingcheng',
multiple:false,
required:true,
panelHeight:'auto',
remoteSort:true"
editable="false"></td>


<td><label>文化程度</label></td>
<td><select class="easyui-combobox"
data-options="panelHeight:'auto'" name="xueli" editable="false">
<option value="博士">博士</option>
<option value="研究生">研究生</option>
<option value="大学" selected>本科</option>
<option value="高中">高中</option>
</select></td>




<td><label>婚姻状况</label></td>
<td><select class="easyui-combobox"
data-options="panelHeight:'auto'" name="hunyinzhuangkuang"
editable="false">
<option value="已婚">已婚</option>
<option value="未婚" selected>未婚</option>
</select></td>
<td><label>民族</label></td>
<td><input type="text" class="easyui-text" name="minzu"
style="width: 122px;" /> <input type="hidden" name="companyid" />
<input type="hidden" name="xueyuanid" /></td>
</tr>
<tr>
<td><label>密码</label></td>
<td><input type="password" name="mima"
class="easyui-validatebox" maxlength="36" value="000000" /></td>
<td><label>出生年月</label></td>
<td><input type="text" name="chushengriqi"
class="easyui-datebox" editable="false" /></td>
<td><label>证件号</label></td>
<td><input type="text" name="zhengjianhao"
οnkeyup="value=value.replace(/[^\d]/g,'') " maxlength="18"
style="width: 150px;" /></td>
<td><label>房间号</label></td>
<td><input type="text" name="fangjianhao"
class="easyui-validatebox" style="width: 60px" /></td>
</tr>


<tr>
<td><label>单位</label></td>
<td><input type="text" class="easyui-text" name="danwei" /></td>
<td><label>军衔</label></td>
<td><input type="text" class="easyui-text" name="junxian"
style="width: 122px;" /></td>
<td><label>部职别</label></td>
<td colspan="4">
<!-- 军区分类 --> <select id="buzhibie" class="easyui-combobox"
style="display: none; width: 60px;" name="buzhibie"
editable="false" data-options="required:true">
<option value="沈空">沈空</option>
<option value="北空" selected="selected">北空</option>
<option value="济空">济空</option>
<option value="成空">成空</option>
<option value="南空">南空</option>
<option value="广空">广空</option>
<option value="空直">空直</option>
<option value="其他">其他</option>
</select> <input type="text" name="shiyuanlvcontext"
class="easyui-validatebox" style="width: 80px;" />
<!-- 师旅院分类 -->
<select id="shiyuanlv" class="easyui-combobox"
data-options="panelHeight:'auto'" name="shiyuanlv"
editable="false" style="width: 40px;">
<option value="师">师</option>
<option value="旅">旅</option>
<option value="院">院</option>


</select> <input type="text" name="tuancontext" style="width: 60px;">
<!-- 团分类 --> <select id="tuan" class="easyui-combobox"
data-options="panelHeight:'auto'" name="tuan" editable="false"
style="width: 40px;">
<option value="团">团</option>
</select> <input type="text" name="xiangxicontext" style="width: 100px;">
<label><input
              type="file" name="touxiang" size="0" style = "width:1px" ContentEditable="false" /><u><font color="blue">上传头像</font></u></label>
</td>
</tr>
<tr>
<td rowspan="3"><label>简历</label></td>
<td rowspan="3" colspan="8"><textarea name="jianli"
style="height: 60px; width: 100%"></textarea></td>
</tr>
<tr></tr>
<tr></tr>
</table>
</div>
<div id="p2" class="easyui-panel" style="width: 970px;"
data-options="title:'联系信息',iconCls:'icon-save', collapsible:true">
<table class="tableForm" style="width: 100%;" align="center">
<tr>
<td><label>手机号码</label></td>
<td><input type="text" maxlength="11"
οnkeyup="value=value.replace(/[^\d]/g,'') " name="shoujihao"
id="shouji" οnblur="isMobile(document.getElementById('shouji'));" /></td>
<td><label>QQ号码</label></td>
<td><input type="text"
οnkeyup="value=value.replace(/[^\d]/g,'') " name="qqhao"
id="qqhao" οnblur="isQQ(document.getElementById('qqhao'));" /></td>
<td><label>邮编</label></td>
<td><input type="text" maxlength="6"
οnkeyup="value=value.replace(/[^\d]/g,'') " name="youbian"
id="youbian"
οnblur="isPostalCode(document.getElementById('youbian'));" /></td>
<td><label>E-mail</label></td>
<td><input type="text" class="easyui-validatebox"
data-options="validType:'email'" name="email" /></td>
</tr>
<tr>
<td><label>家庭电话</label></td>
<td><input type="text"
οnkeyup="value=value.replace(/[^\d]/g,'') " name="jiatingdianhua"
maxlength="11" /></td>
<td><label>家庭联系人</label></td>
<td><input type="text" class="easyui-text"
name="jiatinglianxiren" /></td>
<td><label>单位电话</label></td>
<td><input type="text"
οnkeyup="value=value.replace(/[^\d]/g,'') " name="danweidianhua"
maxlength="11" /></td>
<td><label>单位联系人</label></td>
<td><input type="text" class="easyui-text"
name="danweilianxiren" /></td>
</tr>
<tr>
<td><label>家庭住址</label></td>
<td colspan="3"><input type="text" class="easyui-text"
name="jiatingzhuzhi" /></td> 
</tr>
<!-- <tr>
<td colspan="8"><textarea style="height: 60px; width: 500px"
name="jiatingzhuzhi"></textarea></td>
</tr> -->
</table>
<font color="red"> <!-- 注意事项,用红色标记 -->
<table class="tableForm" style="width: 100%;" align="center">
<tr>
<td colspan="7"><label>***注意***</label></td>
</tr>
<tr>
<td>&nbsp;&nbsp;1、“部职别”如果没有可用的选项,请选择其他,手动输入;<br>
&nbsp;&nbsp;2、“部职别”填写一定要详细到中队。
</td>
</tr>
</table>
</font>
</div>


</form>
</div>
<!--上传头像form -->
<!-- <div id="addAvatarDialog" style="width: 60px; height: 80px;"
class="easyui-panel" data-options="title:'基本信息',iconCls:'icon-save',collapsible:true">
<form id="addAvatarForm" method="post" enctype="multipart/form-data">
文件标题:<input type="text" name="title" size="50" /><br /> 选择文件:<input
type="file" name="upload" size="50" /><br /> <input type="submit"
value=" 上传头像 " />
</form> 


</div> -->
</body>
</html>


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值