如何在jsp页面中添加文框存储和获取

首先在jsp页面中添加文本框(text/textarea)、id()。

首次关注信息:
    <div>
        <textarea id="txaDgdFirstInfo" class="form-control" style="height: 100px;"></textarea>
    </div>

添加数据库新增字段(first_info)
利用hibernate框架映射
打开database explorer
add jars 添加mysql connect jar包
然后finish

![%]57S@Y6DN@FIR9VO`_GZXB.png](http://upload-images.jianshu.io/upload_images/3404498-c7870c407aebd283.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

打开对应的数据库表,


9P{78}KG18O~$K`LGG(@XD7.png

右键进行映射

![
![


[ZA0J[DYKB4YG{EIEXN%IJ8.png](http://upload-images.jianshu.io/upload_images/3404498-93d5dc4df2f6fd9c.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240) ](http://upload-images.jianshu.io/upload_images/3404498-f23a8da292e0657c.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

在公共类(CommonVo和TSpAccount)中检查是否生成firstInfo,并且设置get/set
找到Account类,修改

    // Property accessors
    @Id
    @GeneratedValue(strategy = IDENTITY)
    @Column(name = "ID", unique = true, nullable = false)

回到jsp页面在页面中寻找提交方法。并且把数据获取提交
,"cvoParameter.firstInfo": $("#txaDgdFirstInfo").val()

funCallback = funCallback || function(){};
    var sText = "是否确定保存授权设置?";
    var sUrl = "spAction_saveDoctorGrantSetting";
    var objParams = {
        "cvoParameter.jsonData": doctorSetting.getGrantData()
        ,"cvoParameter.firstInfo": $("#txaDgdFirstInfo").val()
    };
    commonJs.confirmSubmit(sText, sUrl, objParams, funCallback);
};

根据Url = "spAction_saveDoctorGrantSetting"找到相应的action及方法

/**
     * 保存私人医生授权设置
     */
    @IAccess(competenceNumber = { GlobalCache.UserRole.SPD }, returnFormat = GlobalCache.JSON)
    public void saveDoctorGrantSetting() {
        CommonVo cvoParams = getCvoParameter();
        MessageVo mvoResult = new MessageVo();
        if (StringUtils.isEmpty(cvoParams.getJsonData())) {
            mvoResult.setSuccess(false);
            mvoResult.setMessage("缺少参数!");
        } else {
            cvoParams.setId(getLoginInfos().getId());
            mvoResult = funSp.saveDoctorGrantSetting(cvoParams);
        }
        outJson(mvoResult);
    }

打开saveDoctorGrantSetting方法更新文本框内容。
cvoUpdate.setFirstInfo(cvoParams.getFirstInfo());

/**
     * 保存私人医生授权设置
     * @param cvoParams
     * @return
     */
    public MessageVo saveDoctorGrantSetting(CommonVo cvoParams) {
        Set<Long> setIds = new HashSet<Long>();     
        Long lDoctor = null;
        if (!StringUtils.isEmpty(cvoParams.getJsonData())) {
            JSONArray jsonArray = JSONArray.fromObject(cvoParams.getJsonData());
            for (int i = 0; i < jsonArray.size(); i++) {
                JSONObject jsonObject = jsonArray.getJSONObject(i);
                CommonVo cvoDetail = (CommonVo) JSONObject.toBean(jsonObject, CommonVo.class);
                setIds.add(cvoDetail.getId());
                if ("1".equals(cvoDetail.getIsBinding())) {
                    lDoctor = cvoDetail.getId();
                }
            }
        }

        StringBuilder sbBuffer = new StringBuilder();
        for (Long lId : setIds) {
            sbBuffer.append(lId).append(",");
        }
        if (sbBuffer.length() > 0) {
            sbBuffer.deleteCharAt(sbBuffer.length() - 1);
        }

        CommonVo cvoUpdate = new CommonVo();
        cvoUpdate.setId(cvoParams.getId());
        cvoUpdate.setFirstInfo(cvoParams.getFirstInfo());
        cvoUpdate.setDoctorIdList(CommonBean.canNullValue(sbBuffer.toString()));
        cvoUpdate.setDoctorId(CommonBean.canNullValueLong(lDoctor));
        MessageVo mvoResult = tdoSpAccount.update(cvoUpdate);
        mvoResult.setMessage(mvoResult.isSuccess() ? "授权设置保存成功!" : "授权设置保存失败!");
        return mvoResult;
    }

找到对应名称的TableDao类
写入update语句

public MessageVo update(CommonVo cvoUpdate) {
        MessageVo mvoResult = new MessageVo();
        String sHql = "update " + TABLE_NAME + " set ";// 更新语句
        try {
            Object[] objParameter = null;// 当为条件时第3个参数为是否必要,当为参数时第3个参数为默认值
            ArrayList<Object[]> arrCondition = new ArrayList<Object[]>();// 条件列表
            ArrayList<Object[]> arrParameter = new ArrayList<Object[]>();// 参数列表
            // 设置更新条件
objParameter = new Object[] { " first_info = ? ", cvoUpdate.getFirstInfo() };
            arrParameter.add(objParameter);//
            // 执行更新语句
            update(sHql, arrCondition, arrParameter);
            mvoResult.setSuccess(true);
            mvoResult.setMessage("更新数据成功!");
        } catch (Exception e) {
            CommonBean.handleException(e, mvoResult);
            mvoResult.setSuccess(false);
            mvoResult.setMessage("更新数据失败!");
            e.printStackTrace();
        }
        return mvoResult;
    }

存储至数据库以完成

取出数据

在jsp页面找加载的方法,并根据id利用jquery给id赋值 $("#txaDgdFirstInfo").val(data.cvoResult.firstInfo);

doctorSetting.loadSetting = function(){
    var sUrl = "spAction_loadDoctorGrantSetting";
    commonJs.openAjax(sUrl, { hasLoading:false }, function(data){
        if(!data.success){
            commonJs.openDialog("error", data.message);
            return;
        }

        var $doctorList = $("#divDgdTemplate select").append($('<option value="">--请选择--</option>'));
        var arrDoctor = data.lstResult2 || [];
        $.each(arrDoctor, function(i, item){
            var $option = $("<option></option>").text(item.name).attr("value", item.id);
            $doctorList.append($option);
        });

        var arrGrant = data.lstResult || [];
        $.each(arrGrant, function(i, item){
            var $tr = doctorSetting.addDoctor();
            $tr.find("select option[value='" + item.id + "']").prop("selected", true);
            if(item.isBinding == "1"){
                $tr.find("input[name='rad_canReply']").iCheck("check");
            }
        });
        if(arrGrant.length == 0){
            doctorSetting.addDoctor();
        }
        $("#txaDgdFirstInfo").val(data.cvoResult.firstInfo);
    }, commonJs.funError);
};

根据action找到方法,

/**
     * 获取私人医生授权设置
     * @return
     */
    @IAccess(competenceNumber = { GlobalCache.UserRole.SPD }, returnFormat = GlobalCache.JSON)
    public void loadDoctorGrantSetting() {
        CommonVo cvoParams = getCvoParameter();
        cvoParams.setId(getLoginInfos().getId());
        cvoParams.setSpId(getSpId());
        MessageVo mvoResult = funSp.loadDoctorGrantSetting(cvoParams);
        mvoResult.setLstResult2(funClinic.listStaffInSp(cvoParams.getSpId(), null));
        outJson(mvoResult);
    }

查找loadDoctorGrantSetting方法
数据获取 mvoResult.setCvoResult(cvoAccount);

/**
     * 获取私人医生授权设置
     * @param cvoParams
     * @return
     */
    @SuppressWarnings("unchecked")
    public MessageVo loadDoctorGrantSetting(CommonVo cvoParams) {
        MessageVo mvoResult = new MessageVo();
        CommonVo cvoAccount = tdoSpAccount.getOne(cvoParams);
        if (cvoAccount == null) {
            mvoResult.setSuccess(false);
            mvoResult.setMessage("请重新登陆系统!");
            return mvoResult;
        }

        if (!StringUtils.isEmpty(cvoAccount.getDoctorIdList())) {
            CommonVo cvoSelect = new CommonVo();
            cvoSelect.setPageNum(1);
            cvoSelect.setLimitNum(Integer.MAX_VALUE);
            cvoSelect.setSpId(cvoParams.getSpId());
            cvoSelect.setSql(" and id in (" + cvoAccount.getDoctorIdList() + ") ");
            List<CommonVo> lstDoctor = (List<CommonVo>) tdoSpAccount.getList(cvoSelect).getLstResult();
            lstDoctor = (lstDoctor != null) ? lstDoctor : new ArrayList<CommonVo>();

            if (cvoAccount.getDoctorId() != null && cvoAccount.getDoctorId() != 0) {
                for (CommonVo cvoDoctor : lstDoctor) {
                    if (cvoAccount.getDoctorId().equals(cvoDoctor.getId())) {
                        cvoDoctor.setIsBinding("1");
                    } else {
                        cvoDoctor.setIsBinding("0");
                    }
                }
            }
            mvoResult.setLstResult(lstDoctor);
        }
        mvoResult.setCvoResult(cvoAccount);
        mvoResult.setSuccess(true);
        return mvoResult;

现在基本已完成

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,390评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,821评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,632评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,170评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,033评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,098评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,511评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,204评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,479评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,572评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,341评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,213评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,576评论 3 298
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,893评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,171评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,486评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,676评论 2 335

推荐阅读更多精彩内容