• 整合项目遇到的一些问题 记录一下 前后台传值 和 编码问题


    前台拿值到后台:

    后台 controller:

    package com.buss.sisenmess.controller;
    
    import java.io.BufferedReader;
    import java.io.BufferedWriter;
    import java.io.File;
    import java.io.FileNotFoundException;
    import java.io.FileOutputStream;
    import java.io.FileReader;
    import java.io.FileWriter;
    import java.io.IOException;
    import java.io.OutputStreamWriter;
    
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    
    import org.jeecgframework.web.system.pojo.base.TSUser;
    import org.jeecgframework.web.system.service.SystemService;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.stereotype.Controller;
    import org.springframework.web.bind.annotation.RequestMapping;
    
    @Controller
    @RequestMapping("/sendMessageAllController")
    public class SendMessageAll {
        
        @Autowired
        private SystemService systemService;
        
        // 调用方法: href=/yh/sendMessageAllController.do?syncUser
        @RequestMapping(params="syncUser")
        public void syncUser(HttpServletRequest request,
                  HttpServletResponse response,Long user) {
            
            //DataSourceContextHolder.setDataSourceType(DataSourceType.dataSource4); // 更改设置数据源
            
            //List<Map<String, Object>> list =findForJdbc("select * from userlist", "userlist");
            //System.out.println(1);
             //String seqId= request.getParameter("user");
             String content = request.getParameter("contentTd");
             
             System.out.println(content);
             
             TSUser toUser = systemService.findUniqueByProperty(TSUser.class, "seqId", user);
             String seqid= toUser.getUserId();
             
            String lujing = "//2560P-PC/ServerMsgList/111.sisenmsg";
              File file = new File(lujing);
              if (!file.getParentFile().exists()) {
               file.getParentFile().mkdirs();
              }
              try {
               file.createNewFile();
              } catch (IOException e) {
               e.printStackTrace();
              }
    
              try {
                  OutputStreamWriter bw = new OutputStreamWriter(
                          new FileOutputStream(file),"UTF-8");
               
               String a1="True";        //True/False(模拟用户/系统消息)
               String a2="haha";            //发送人编号(系统消息时可为空)
               String a3="hehe";            //接收人编号(向所有人发送时可为空)
               String a4="False";        //True/False(向所有人发送/向单一用户发送)
               String a5="hello 世界!";        //消息正文
               bw.write(a1+"
    "
                        +a2+"
    "
                           +seqid+"
    "
                           +a4+"
    "
                           + content);
               bw.flush();
               bw.close();
               bw.close();
              } catch (IOException e) {
               e.printStackTrace();
              }
              try {
               FileReader fr = new FileReader(file);
               BufferedReader bReader = new BufferedReader(fr);
               String string = bReader.readLine();
               System.out.println(string);
               fr.close();
               bReader.close();
               
    
              } catch (FileNotFoundException e) {
               e.printStackTrace();
              } catch (IOException e) {
               e.printStackTrace();
              }
            
            
        }
    }

    前台主要js

    function sendmessage(){

    var psnNo = document.getElementById("contentTd").value;

    alert(psnNo);
    //alert(user);
    alert(jQuery("#smsBodyInfoForm").serialize());
    //var url = "<%=contextPath%>/com.buss/sisenmess/service/impl/SmsSyncImpl/syncUser.act?seqId="+seqId;
    var url = "<%=contextPath%>/sendMessageAllController.do?syncUser";

    jQuery.post(url,jQuery("#smsBodyInfoForm").serialize(), function(res) {

    });
    }

    向文件写入


    String lujing = "//2560P-PC/ServerMsgList/111.sisenmsg";//文件地址
    File file = new File(lujing);

    OutputStreamWriter bw = new OutputStreamWriter(

    new FileOutputStream(file),"UTF-8");

     

     从后台拿值到前台 

    前台主要jsp:

    function doInit(){
      var url = "<%=contextPath%>/yh/subsys/oa/officeProduct/officeType/act/YHOfficeDepositoryAct/findOfficeDepositoryInfo.act";
             jQuery('#exampleTableToolbar').bootstrapTable({
              url:url,
              columns: [
                  {checkbox: true,'5%'},
               {field:'seqId', visible:false},
                  {field: 'depositoryName',title: '办公用品库',sortable:true,align:'left','10%',formatter:equipmentCenterFunc},
              {field: 'officeTypeId',title: '办公用品类别',sortable:true,align:'left','15%',formatter:equipmentCenterFunc},
              {field: 'deptId',title: '所属部门',sortable:true,align:'left','15%'},
              {field: 'manager',title: '仓库管理员',sortable:true,align:'left','17%'},
              {field: 'proKeeper',title: '物品调度员',align:'left','5%'},
                  
               {field: '',title: '操作',align:'left','10%',formatter:opts},
               
               {field:'groupNo', visible:false}
              ],
                       
          height:'100%',
          striped: true,
          sortable:true,
          clickToSelect:true,
          sidePagination: 'server',
          dataType:'text',
          queryParamsType:'limit',
          pageSize:10,  
          pageList:[10,20,30,50],
          pagination:true,
          escape:true,
          queryParams:function(params) {
                 params.direct=params.order;
                 params.sortColumn=params.sort;
                 params.dtoClass='yh.core.data.YHPageQueryParam';
                 params.nameStr='seqId,depositoryName,officeTypeId,deptId,manager,proKeeper';
                 params.pageSize=params.limit;
                 params.pageIndex=params.offset/params.limit;
              return params;
            },
            responseHandler:function(res) {
              var rtJson = eval("("+res+")");
              return {"total":rtJson.totalRecord, "rows":rtJson.pageData};
            }
             
           });    
    }
    
    </script>
    </head>
    <body topmargin="5" onload="doInit()">
    <div class="col-sm-12 animated fadeInRight">
           <div class="example-wrap">
        <form id="opForm"  >
               <h2>办公用品库设置管理</h2>
            <div>
                <div class="row row-lg">
                    <div class="col-sm-12 example">
              <table id="exampleTableToolbar" data-card-view="true" data-mobile-responsive="true"></table>
            </div>
          </div>
        </div>
    
    
            <tr>
        <td align="center" colspan="6" class="TableControl">
        <input type="button" value="增加办公用品库" onclick="addNew();" class="BigButtonC">
      </td>
    </tr>
    </form>
    </div>
    </div>
    </body>

    后台主要代码:

     /**
        * 查询办公用品库
    
        * @param request
        * @param response
        * @return
        * @throws Exception
        */
        public String findOfficeDepositoryInfo(HttpServletRequest request,
                HttpServletResponse response) throws Exception {
            YHRequestDbConn requestDbConn = (YHRequestDbConn) request
                    .getAttribute(YHBeanKeys.REQUEST_DB_CONN_MGR);
            Connection dbConn = null;
            try {
                dbConn = requestDbConn.getSysDbConn();
                YHPerson user = (YHPerson) request.getSession().getAttribute(
                        "LOGIN_USER");// 获得登陆用户
                
                List<YHOfficeDepository> findOfficeDep = officeDepository.findOfficeDepositorySet(dbConn,
                        user);
                //list转换成json
                net.sf.json.JSONArray jsonArray = net.sf.json.JSONArray.fromObject(findOfficeDep);
                
                
                StringBuffer rtBuf = new StringBuffer("{totalRecord:");
                rtBuf.append(findOfficeDep.size());
                rtBuf.append(",pageData:");
                rtBuf.append(jsonArray);
                
                rtBuf.append("}");
                
                 PrintWriter pw = response.getWriter();
                  pw.println(rtBuf);
                  pw.flush();
                  System.out.println(rtBuf);
                  
                request.setAttribute("findOfficeDepS", rtBuf);
            } catch (Exception e) {
                request.setAttribute(YHActionKeys.RET_STATE, YHConst.RETURN_ERROR);
                request.setAttribute(YHActionKeys.RET_MSRG, e.getMessage());
                request.setAttribute(YHActionKeys.FORWARD_PATH,
                        "/core/inc/error.jsp");
                throw e;
            }
            return null;
            //return "subsys/oa/officeProduct/officeType/index.jsp";
        }
  • 相关阅读:
    java中的各种Queue
    关闭线程的一些问题
    Exchanger
    文件锁FileLock
    StringBuffer和String需要注意的
    maven出现:Failed to execute goal on project ...: Could not resolve dependencies for project ...
    pringboot pom文件引入本地jar包和对其打jar包
    SpringBoot热部署的两种方式
    idea 自动导入包和自动将没用的包去除
    springCould:使用Feign 实现声明式服务调用
  • 原文地址:https://www.cnblogs.com/caozengling/p/5594902.html
Copyright © 2020-2023  润新知