jsp页面提交后如何将信息传到另一个jsp页面并将数据存储到数据库

这是第一个页面,由一个下拉列表和一个复选框组成

 <form action="ProcessAis.jsp" method="post" onsubmit="return check(this);">
<table align="center" width="450">
    <tr>
        <td>
            <h2>船舶检测项</h2>
        </td>
    </tr>
    <tr>
        <td><b>船舶名称</b></td>
    </tr>
        <tr>
            <td>
            <select name="dId" id="dId" class="selectpicker bla bla bli" data-live-search="true" size="1">
                <%
                    List<detection> list = (List<detection>)request.getAttribute("list");
                        if(list ==null || list.size() < 1){
                            out.print("没有数据!");
                        }else{
                            for(detection dct :list){
                                %>
                                <option><%=dct.getFI_FisherName()%></option>
                                <%
                            }
                        }

                    %>
            </select>
                <tr>
            <td><input name="AIS" type="checkbox" id="checkid" onchange="changeval()">AIS</td>
        <tr>
                <tr>
            <td><input type="submit" value="提  交"></td>
        </tr>

这是接收页面

processAis.jsp
 <script type="text/javascript">
    function changevla(){
    var check = document.getElementById("checkid");
    if(check.checkid == true){
        document.getElementById("checkid").value = "1";
    }else{
        document.getElementById("checkid").value = "2";
    }
}
</script>
<%
    try{
        Class.forName("**************");
        String url = "*****************";
        String username = "******";
        String password = "*********";
                Connection conn = DriverManager.getConnection(url,username,password);
                String sql = "insert into newship(FI_FisherName,AIS) values(?,?)";
                PreparedStatement ps = conn.prepareStatement(sql);
                ps.setString(1,dct.getFI_FisherName());
                ps.setString(2,document.getElementById("checkid").value);
                int row = ps.executeUpdate();
                if(row >0){
                    out.print("数据添加成功");
                }
                ps.close();
                conn.close();
    }catch(Exception e){
        out.print("数据添加失败!");
        e.printStackTrace();
    }
%>

下来列表的值是从数据库里读取出来的,目的是将下拉列表的值和复选框的选定情况(选定返回一个值为“1,未选定返回一个值为“2)一起提交到第二个页面,然后再将返回的值存储到数据库中。现在的问题是感觉第一个页面的数据无法传到第二个页面,第二个页面传到数据库里的是空数据。想请问应该如何修改才能达到目的,最好是有详细代码说明,万分感谢。

8个回答

一般如果是提交到Controller中都是直接封装成实体类,你说的提交到另外一个页面,这里我们可以采用一种比较古典的方法
你的提交页面的需要提交的字段需要设置name属性,然后在form表单中设置为post提交方式,然后在接收页面通过 string str1=(String)request.getParmeters("对应的name属性")这样就可以了。希望采纳,
这样可能产生乱码,需要在页面上边设置好编码格式。

uniqueweimeijun
uniquewdl 回复t1441332354: 如果是这样的话我猜测你采用了get请求方式吧,如果是这样的话 你可以过使用new String(str.getBytes("ISO-8859-1"),"UTF-8");这种方式来解决,一般情况下就可以解决了,这是由于get请求方式导致的,希望能够采纳
一年多之前 回复
weixin_41634885
不会射雕的靖哥哥 回复t1441332354: jsp页面之间的传值乱码问题 默认的是iso-8859-1编码格式 解决new String(获取到的值.getBytes("iso-8859-1"),"utf-8") 成功的话希望给5分 我要下载个东西呐
一年多之前 回复
t1441332354
t1441332354 非常感谢您的建议,我现在的确出现了乱码情况。无论是properties还是preferences我能改的都改了,都是UFT-8格式,“request.setCharacterEncoding("utf-8");”“charset=UTF-8" pageEncoding="UTF-8"”这些也都加上了还是不行,还有什么解决办法吗?
一年多之前 回复

第一个页面带着数据提交到Controller,然后数据存在model里面,返回到第二个页面,第二个页面获取model里的数据。然后提交到数据库

weixin_39559187
weixin_39559187 你用的是from 标点提交,第一个页面的 action 指向第二个页面地址,参数可以设置成隐藏表单也可以存入request.setAttribute,第二个页面取出来request.getAttribute
一年多之前 回复
weixin_39913200
叶子飘零水自流 https://blog.csdn.net/sunshine__me/article/details/49494545
一年多之前 回复
weixin_39913200
叶子飘零水自流 https://blog.csdn.net/u014746965/article/details/51280876
一年多之前 回复
weixin_39913200
叶子飘零水自流 可以参考:
一年多之前 回复
t1441332354
t1441332354 有没有代码举例,跪求
一年多之前 回复

1.第一个页面

1.第一个页面的option里面增加value="<%=dct.getFI_FisherName()%>"
2.changevla放在第一个页面
3.processAis.jsp使用request.getParameter("dId")和request.getParameter("AIS")接收参数,即ps.setString(1,request.getParameter("dId"));
建议好好学习一下基础知识吧

t1441332354
t1441332354 非常感谢您的建议,现在可以传输数据了。只是还有个小问题:我需要存到数据库里的AIS的值是1和2,现在当我选中时存进去的是“on”,未选中时存进去的是空字符,请问是不是我设置的changevla()方法有问题?
一年多之前 回复

1.第一个页面

页面传送数据有两种方式:
1、get
2、post

get传送数据的方法是:
传送数据到B页面
当然你还可以在form中将method的属性值设置成get
譬如:

两种方法传递数据的效果是一样的。

post方法传递数据:

到了b页面接收数据的方法【不管是get还是post都是一样的】:
String type1=request.getParameter("type1");
String type2=request.getParameter("type2");

页面传送数据有两种方式:
1、get
2、post

get传送数据的方法是:
传送数据到B页面
当然你还可以在form中将method的属性值设置成get
譬如:

两种方法传递数据的效果是一样的。

post方法传递数据:

到了b页面接收数据的方法【不管是get还是post都是一样的】:
String type1=request.getParameter("type1");
String type2=request.getParameter("type2");

你这个写法不对的。首先JSP都会提交的action或者servlet,通过bean绑定数据传输,并且你JPS页面写了很多JAVA代码。包括连接数据的配置都写在页面上,<%这种写法,在现实开发中,是不可能用到的。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
在jsp中怎么把值传到另一个页面
在jsp页面中把多个商品的详细信息传到另一个jsp页面中并显示该怎么做
JSP页面跳转传值
jsp中有没有什么跳转到另一个页面并且讲前一个页面的值传到另一个页面的 除了URL重写比较麻烦!~
在一个jsp页面中,点击一个按钮,弹出另一个jsp页面
add.jsp:![图片说明](https://img-ask.csdn.net/upload/201507/23/1437636861_239649.jpg) select.jsp:![图片说明](https://img-ask.csdn.net/upload/201507/23/1437636901_138782.jpg) 如图,共有两个jsp页面,一个add.jsp select.jsp,在add.jsp上面有一个请选择按钮,点击请选择按钮后,弹出select.jsp页面,这个页面上是从数据库中遍历的企业,选中一条数据,点击确认,select.jsp页面关闭,并将结果带到add.jsp请选择前面的文本框里面。现在两个jsp页面我已经做好了,那么应该如何才能够得到想要的结果,action层是如何实现的?拜求解决。 好吧,继续昨天的问题: ![add.jsp](https://img-ask.csdn.net/upload/201507/24/1437720016_514705.jpg) ![select.jsp](https://img-ask.csdn.net/upload/201507/24/1437720015_192489.jpg) 应该如何将所选择的值带回到add.jsp推荐企业后的文本框中。 (add.jsp源码:<script type="text/javascript"> function closeYmtPage() { window.history.go(-1); } function findztype() { var idstr = $("#fwdl").val(); $.post("fw.do?action=findzType",{idstr:idstr},function(data){ var types=eval('(' + data + ')'); var typelist = types.typesList; $("#fwxl").empty(); $("#fwxl").append('<option value="">请选择</option>'); $.each(typelist, function (i, item) { var str ='<option value="'+item.id+'" title="'+item.name+'">'+item.name+'</option>'; $("#fwxl").append(str); }); }); } //推荐企业按钮 function openwindow(){ window.showModalDialog("/jxw/xq.do?action=showTjList",window, "status:no;scroll:yes; dialogWidth:400px;dialogHeight:400px"); } function addxm(flag){ $("#fbState").val(flag); var xqName =$("#xqName").val(); if(xqName =="") { alert("需求名称不能为空!"); return; } if($("#fwdl").val()=="" || $("#fwXl").val()==""){ alert("服务类别不能为空"); return; } $("#addForm").ajaxSubmit({ beforeSubmit : function() { $("#saveBtn").attr("disabled", true); }, success : function(data) { var start = data.indexOf(">"); if (start != -1) { var end = data.indexOf("<",start+1); if (end != -1) { data = data.substring(start+1, end); } } if (data == "ok") { alert("添加需求成功"); window.location.href='<c:url value="cartweb.do?action=loadFwxqPage&pageNo=1"/>'; } if (data == "error") { alert("添加需求失败"); } $("#saveBtn").attr("disabled", false); }, complete : function() { $("#saveBtn").attr("disabled", false); }, error : function() { $("#saveBtn").attr("disabled", false); alert("请求错误"); } }); } function checkfkfs(){ var fkfs=$("#fkfs").val(); if(fkfs=="2") { document.getElementById("price").disabled="disabled"; }else{ $("#price").removeAttr("disabled"); } } function addxqlc() { window.parent.document.getElementById("btnxqOk").click(); } </script> </head> <body> <div class="main_nav"> <div class="lb_nav" id="current_pageDiv" style="width: 100%"> <div class="lb_nav_tu">添加需求</div> <a href="javascript:void(0)" onclick="addxqlc()" style="float:right;font-size:16px;font-style:oblique;padding-right:20px">操作说明</a> </div> <form id="addForm" action="<c:url value='/xq.do?action=doAddxq'/>" method="post" id="addForm" name="addForm"> <input type="hidden" id="fbfs" name="fbfs" value="1" /> <table cellpadding="0" cellspacing="0" class="cx_table"> <tr> <th><b>*</b>需求名称:</th> <td height="25" align="left" bgcolor="#FFFFFF" colspan="3"><input type="text" id="xqName" name="xqName" value="" maxlength="50" /></td> </tr> <tr> <th><b>*</b>付款方式:</th> <td height="25" align="left" bgcolor="#FFFFFF"><select id="fkfs" name="fkfs" onchange="checkfkfs()"> <option value="1">具体价格</option> <option value="2">面议</option> </select></td> <th><b>*</b>预算价格(元):</th> <td height="25" align="left" bgcolor="#FFFFFF"><input type="text" id="price" name="price" value="" onkeyup="value=value.replace(/[^\d]/g,'') " onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))" /> </td> </tr> <tr> <th><b>*</b>服务所属大类:</th> <td height="25" align="left" bgcolor="#FFFFFF"><select name="fwdl" id="fwdl" class="select_field" onchange="findztype()"> <c:forEach items="${fwdl}" var="domain"> <option value="${domain.id }" title="${domain.name }"> ${domain.name }</option> </c:forEach> </select></td> <th><b>*</b>服务所属小类:</th> <td height="25" align="left" colspan="3" bgcolor="#FFFFFF"><select name="fwxl" id="fwxl" class="select_field"> <c:forEach items="${fwxl}" var="domain"> <option value="${domain.id }" title="${domain.name }"> ${domain.name }</option> </c:forEach> </select></td> </tr> <tr> <th><b>*</b>需求内容:</th> <td height="25" align="left" colspan="3" bgcolor="#FFFFFF"><script type="text/plain" id="myEditor" name="contents"></script> <script type="text/javascript"> var Editor= new UE.ui.Editor({initialFrameWidth:'600',initialFrameHeight:'200',toolbars:[['fullscreen', 'undo', 'redo', '|', 'bold', 'italic', 'underline', 'fontborder', 'strikethrough', 'superscript', 'subscript', 'removeformat', 'formatmatch', 'autotypeset', 'blockquote', 'pasteplain', '|', 'forecolor', 'backcolor', 'insertorderedlist', 'insertunorderedlist', 'selectall', 'cleardoc', '|', 'rowspacingtop', 'rowspacingbottom', 'lineheight', '|', 'customstyle', 'paragraph', 'fontfamily', 'fontsize', '|', 'directionalityltr', 'directionalityrtl', 'indent', '|', 'justifyleft', 'justifycenter', 'justifyright', 'justifyjustify', '|', 'touppercase', 'tolowercase', '|', 'link', 'unlink', 'anchor', '|', 'imagenone', 'imageleft', 'imageright', 'imagecenter', '|', 'insertimage', 'emotion', 'insertvideo', 'music', 'attachment', 'map', 'gmap', 'insertframe','pagebreak', 'template', 'background', '|', 'horizontal', 'date', 'time', 'spechars', 'snapscreen', 'wordimage', '|', 'inserttable', 'deletetable', 'insertparagraphbeforetable', 'insertrow', 'deleterow', 'insertcol', 'deletecol', 'mergecells', 'mergeright', 'mergedown', 'splittocells', 'splittorows', 'splittocols', '|', 'print', 'preview', 'searchreplace', 'help']] ,elementPathEnabled : false}); Editor.render('myEditor'); </script></td> </tr> <tr> <th><b>*</b>推荐企业:</th> <td height="25" align="left" bgcolor="#FFFFFF" colspan="3"><textarea readonly="readonly" class="cl_textarea_small" name="xqName" id="xqName" width="100"></textarea> <input type=button name=inputboxbt value=请选择 onclick="openwindow();"></td> </tr> </table> <div class="btn_nav_dk"> <input type="hidden" value="" id="fbState" name="fbState" /> <input type="button" value="保 存" id="saveBtn" class="btn_bg" onclick="addxm('1');" /> <input type="reset" value="重 置" class="btn_bg" /> <input type="button" value="返 回" class="btn_bg" onclick="closeYmtPage();" /> </div> </form> </div> </body>) (select.jsp源码:<script type="text/javascript"> function bconfirm(){ dialogArguments.addNameform.inboxname.value=document.form1.inboxname.value; dialogArguments.opensub(); window.close(); } function bcancel(){ window.close(); } //将值传给text文本框 function result(form) { var a = document.getElementById("inboxname"); a.value = ""; for (var i = 0; i < form.elements.length; i++) { var e = form.elements[i]; if (e.name == "ifCheck" && e.checked == true) { a.value = a.value + e.value + "," } } } </script> </head> <body> <div class="content clr fl"> <div class="posit"> <h2> <ul> <li>当前位置:</li> <li>添加需求->推荐企业选择-<span>&gt;</span></li> </ul> </h2> </div> <div class="main"> <!--检索区域开始 -- <!--检索区域结束 --> <!--按钮区域开始 --> <div class="btm_list"> <h3>请选择企业:</h3> <div class="op_btn"></div> <!--按钮区域结束 --> <div class="form"> <form method=post name=form action=" /xq.do?action=doAddxq"> <input id="inboxname" type="hidden" name="inboxname" value="" /> <!-- <textarea readonly="readonly" class="cl_textarea_small" name="inboxname" id="inboxname" type="hidden" value=""></textarea><p>--> <input type=button name=inputboxbt value=确定 onclick="bconfirm();"> <input type=button name=inputboxbs value=关闭 onclick="bcancel();"> <table> <tr> <th style="width: 5%;"><input type="checkbox" onclick="checkOrCancel(this);" class="textCursor" /> </th> <th>序号</th> <th>企业名称</th> </tr> <c:forEach items="${domain}" var="domain1" varStatus="status"> <tr <c:if test="${status.count%2 == 0 }">class="grid_dark"</c:if> <c:if test="${status.count%2 == 1 }">class="grid_dark"</c:if> id="${domain1.id }"> <td><input type="checkbox" value="${domain1.id }" name="ifCheck" style="cursor: pointer;" id="ifCheck" onClick="result(this.form)" /> <input id="qymc.id" type="hidden" name="qymc.id" value="" /></td> <td>${status.count }</td> <td>${domain1.qymc }</td> </tr> </c:forEach> </table> </form> </div> </div> </div> </div> </body>)
jsp页面<a>标签传参问题
在jsp页面利用<a>标签的href传参数到另一个jsp,可为什么取不到传的参数啊 1.jsp ``` <a href="test.jsp?username='王进'">度假酒店</a> ``` test.jsp ``` <%=request.getAttribute("username") %> ``` 代码如上,取出来是个null,在网上查怀疑是传参方式问题,<a>是get而不是post,但不知是不是这个原因,求大佬提点,感谢
使用jsp:forward跳转到另一个页面时乱码(不传参数)
a.jsp页面写的是 <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> </head> <body> <jsp:forward page="b.html"></jsp:forward> </body> </html> 很简单的代码,只是想试试jsp forward的作用。 b.html的是 <html> <head> <meta charset="UTF-8"> <title>Insert title here</title> </head> <body> <p>欢迎</p> </body> </html> 在eclipse中直接打开b页面的话没有问题,正常显示中文;但是如果使用jsp forward 标签跳转到这个页面的话,就会出现乱码。这是为什么呢?应该如何解决呢?
jsp页面 onclick传入参数为reuest请求的参数,执行函数怎么去下一个servlet
由一个servlet请求转发到jsp页面,jsp页面 ``` <input class="right btn" type="submit" value="提交评论" onclick='subComment("<%=article.getArticleId() %>");return false;'/> ``` 我想执行这个subComment(artcicle)的时候,同时获取页面的另一个元素的值并用Ajax转向另一个servlet,但是现在在这个js中我获取页面元素的值的时候会再去原来转向jsp页面前的servlet ``` function subComment(articleIda){ console.log("评论"); //这里会错,页面上仿佛没有这个元素 是undefined,但是jsp中是有的 console.log($("#txtcomment")); var textData = $("#txtcomment").val(); console.log(textData); ``` 就上面这个情况,请问我怎么修改才可以取到这个jsp页面的元素的值并传向另一个sevlet呢? ,
jsp传参跳转到另一个jsp报错
报错如下 org.apache.jasper.JasperException: An exception occurred processing JSP page /replycheck.jsp at line 52 49: 50: <%} else{%> 51: 52: <jsp:forward page="reply.jsp?replyId=<%=replyId %>&articleType=<%=articleType %>&articleId=<%=artid %>&floor=<%=floor %>" /> 53: <%} %> 54: Stacktrace: org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:568) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:455) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334) javax.servlet.http.HttpServlet.service(HttpServlet.java:728) root cause org.apache.jasper.JasperException: java.lang.IllegalArgumentException: [=] is not a hexadecimal digit org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:549) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:470) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334) javax.servlet.http.HttpServlet.service(HttpServlet.java:728) org.apache.jasper.runtime.PageContextImpl.doForward(PageContextImpl.java:746) org.apache.jasper.runtime.PageContextImpl.forward(PageContextImpl.java:716) org.apache.jsp.replycheck_jsp._jspService(replycheck_jsp.java:119) org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) javax.servlet.http.HttpServlet.service(HttpServlet.java:728) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334) javax.servlet.http.HttpServlet.service(HttpServlet.java:728) root cause java.lang.IllegalArgumentException: [=] is not a hexadecimal digit org.apache.catalina.util.RequestUtil.convertHexDigit(RequestUtil.java:316) org.apache.catalina.util.RequestUtil.parseParameters(RequestUtil.java:400) org.apache.catalina.util.RequestUtil.parseParameters(RequestUtil.java:153) org.apache.jsp.reply_jsp._jspService(reply_jsp.java:70) org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) javax.servlet.http.HttpServlet.service(HttpServlet.java:728) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334) javax.servlet.http.HttpServlet.service(HttpServlet.java:728) org.apache.jasper.runtime.PageContextImpl.doForward(PageContextImpl.java:746) org.apache.jasper.runtime.PageContextImpl.forward(PageContextImpl.java:716) org.apache.jsp.replycheck_jsp._jspService(replycheck_jsp.java:119) org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) javax.servlet.http.HttpServlet.service(HttpServlet.java:728) org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432) org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390) org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334) javax.servlet.http.HttpServlet.service(HttpServlet.java:728) 代码如下: <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %> <% String artid=request.getParameter("articleId"); String articleType=request.getParameter("articleType"); String replyId=request.getParameter("replyId"); String floor=request.getParameter("floor"); if(session.getAttribute("name")==null){ %> <html> <h1>您尚未登陆</h1> </html> <span id="time" style="background:red">5</span>秒钟后自动跳转至登陆界面,如果不跳转,请点击下面链接 <script language="JavaScript1.2" type="text/javascript"> <!-- // Place this in the 'head' section of your page. function delayURL(url) { var delay=document.getElementById("time").innerHTML; if(delay>0){ delay--; document.getElementById("time").innerHTML=delay; }else{ window.top.location.href=url; } setTimeout("delayURL('"+url+"')",1000); } //--> </script> <a href="login.jsp">登陆页面</a> <script type="text/javascript"> delayURL("login.jsp"); </script> <%} else{%> <jsp:forward page="reply.jsp?replyId=<%=replyId %>&articleType=<%=articleType %>&articleId=<%=artid %>&floor=<%=floor %>" /> <%} %>
jsp页面多选下拉框传值的问题
![图片说明](https://img-ask.csdn.net/upload/201805/25/1527212940_659216.png) 如何将图中圈红的部分的“output”数据传送到另一个页面,求详细代码,谢谢。
关于从jsp页面想controller类传值的问题!
刚学java web开发不久,最近打算用mybatis,spring框架写一个购物网站的小项目,首页显示文字和图片全部从数据库获取显示,在controller存进去一个从数据库获取到的分类列表,然后在jsp遍历显示出来,我现在就想点击从jsp显示的分类名字,获取到对应的id,然后将该id返回到另一个controller类里的方法应用,怎么做?希望加个微信或者QQ好友,帮帮忙,自己很想做完这个项目!![图片说明](https://img-ask.csdn.net/upload/201711/05/1509893772_37010.png) ![图片说明](https://img-ask.csdn.net/upload/201711/05/1509893789_568687.png) ![图片说明](https://img-ask.csdn.net/upload/201711/05/1509893799_439264.png)
jsp跳转到另一个jsp数据直接传过,不经过数据库
在1.jsp中做了一个表单,点跳转按钮如何在第二个2.jsp中生成表单,希望详细解答一下,不知道用什么语句和放在哪里
怎么获取jQuery grid里某一个单元格里的值,并传到另一个页面
用jquery Grid在jsp里建的表,从后台查的数据
extjs grid 超链接问题
``` function renderTopic(value, p, record) { var c = record.get('TASK_ID'); return '<a href="jsp/Auditpage.jsp?task_id='+c+'" target="_blank">'+value+'</a>'; } ``` 以上是Grid表单的超链接,但是传不过值到后台或JSP页面中。 我想就是点击grid超链接获取的ID在另一个jsp页面得到生成一个详细信息表单。注另一个表单也是用extjs写的页面。 例:a.jsp是个汇总表单,点击表单中的链接获取ID在b.jsp是显示此ID详细信息页面
新手 javaweb 传值疑问(如图)
![图片说明](https://img-ask.csdn.net/upload/201906/25/1561433976_13011.png) 怎么把当前jsp页面${list}里的值传给另一个jsp页面啊(初学,麻烦说详细点) 我再补充一下图片 下图huodong.jsp 正常显示 ![图片说明](https://img-ask.csdn.net/upload/201906/25/1561448383_704952.png) 但到了主页(如下)就不显示了 ![图片说明](https://img-ask.csdn.net/upload/201906/25/1561448404_315549.png)
请教一个JSP页面中<script>里嵌套JAVA语句的问题
我想在script里嵌套JAVA语句,接收从另一个页面传来的变量,然后根据他来决定下面的一个span的显示方式 其实就是想通过JS做一个分页的上一页下一页的显示,比如在第一页的时候,上一页的链接隐藏,当只有一页的时候,上一页下一页都隐藏,最后一页的时候下一页隐藏,就是这种效果 大致的代码如下,请问该怎么改怎么,两个从request中取的值都是可以取到的,已经在下面当前页数:X / Y显示了,但是这段代码没有达到预期效果 <head> <script> var oSpan1=getElementById("span1"); var oSpan2=getElementById("span2"); var index=<%=Integer.parseInt(request.getAttribute("index").toString())%> var totalPage=<%=Integer.parseInt(request.getAttribute("totalPage").toString())%> if(index==1&&totalPage==1) { oSpan1.display="none"; oSpan2.display="none"; } else if(index==1Page&&totalPage!=1) { oSpan1.display="none"; oSpan2.display="span"; } else if(index==totalPage&&totalPage1=1) { oSpan1.display="span"; oSpan2.display="none"; } else { oSpan1.display="span"; oSpan2.display=span"; } </script> </head> <body> 当前页数: <%=request.getAttribute("index") %>/ <%=request.getAttribute("totalPage") %> <br/> <span id="span1"><a href="first?index=<%=Integer.parseInt(request.getAttribute("index").toString())-1%>">上一页</a></span> <span id="span2"><a href="first?index=<%=Integer.parseInt(request.getAttribute("index").toString())+1%>">下一页</a></span> </body>
在jsp中如何有file上传文件到oracle数据库中去代码如下
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <%@page import="com.entity.Goods"%> <%@page import="com.biz.impl.GoodsBizimpl"%> <%@page import="com.jspsmart.upload.SmartUpload"%> <%@page import="com.jspsmart.upload.Files"%> <% //创建一个上传的组件 SmartUpload su = new SmartUpload(); //初始化SmartUpload对象(重) su.initialize(pageContext); //pageContext上下文 -- application com.jspsmart.upload.File file = null; //非IO包下的File类 com.jspsmart.upload.Request req = null; //定义允许上传类型 String allowed = "gif,jpg,png,txt"; //定义不许上传类型 String denied = "jsp,asp,php,aspx,html,htm,exe,bat"; //文件上传类型,二选一,一般会选择允许上传类型 //定义上传文件大小 int file_size = 5*1024*1024; //不能超过2M String exceptionMsg = null; //异常信息对象 try { //定义允许上传文件类型 su.setAllowedFilesList(allowed); //不允许上传文件类型 su.setDeniedFilesList(denied); //单个文件最大限制 su.setMaxFileSize(file_size); //设置上传对象的编码 su.setCharset("utf-8"); //GBK GB2312 //执行上传(重) su.upload(); String filepath = null; //路径 //su.getFiles()获得所有文件对象 Files f= su.getFiles(); //循环读取文件对象 for(int i=0; i<f.getCount(); i++){ //取文件对象 file=f.getFile(i); //判断是否有对象 if(!file.isMissing()){ //设置文件在服务器的保存位置 filepath = "upload\\"; //保存到一个upload的文件夹下 //filepath += file.getFileName(); //拼接文件名字 filepath += System.currentTimeMillis()+ file.getFileName().substring( file.getFileName().lastIndexOf(".")); //文件另存为 file.setCharset("utf-8"); //保存(重) file.saveAs(filepath, SmartUpload.SAVE_VIRTUAL); //上传模式 } } } catch (Exception e) { exceptionMsg = e.getMessage(); e.printStackTrace(); } //转码 request.setCharacterEncoding("UTF-8"); response.setContentType("text/html;charset=utf-8"); //获取传过来的i的值 String productName=request.getParameter("productName"); int parentId=Integer.parseInt(request.getParameter("parentId")); String photo=request.getParameter("photo"); int jiage=Integer.parseInt( request.getParameter("jiage")); int kuchun=Integer.parseInt( request.getParameter("kuchun")); String tiaoma=request.getParameter("tiaoma"); //out.print(productName+" "+ parentId+" "+ photo+" "+ jiage +" "+kuchun +" "+tiaoma); //调dao 方法 Goods g=new Goods(productName,parentId,photo,jiage,kuchun,tiaoma); int n=new GoodsBizimpl().getCr(g); if(n>0){ out.print("添加成功"); }else{ out.print("添加失败"); } %> 获取那个值不会,一直报错
用struts2怎么把数据库中的数据保存到集合中并且在jsp中显示呢
就是点击查询跳转到另一个界面并把员工表中的所有数据显示出来,这个集合我不会,也不知道 怎么用session传,
jsp执行sql查询并取出结果 怎么实现循环遍历?求例子 初学
如题 sql表中有很多很多数据,想要查询并用表格的形式来显示出结果 已经连接上了数据库,可以执行查询语句,就是不知道该用什么方式把整个语句查询语句结果传递到显示结果的页面并且以表格的形式展现出来 String all="select sum(iNumb) as iNumbHj,sum (rMoney) as rMoneyHj from [Data_ShopDailyBill_View] group by sShopCode"; Statement stmt1 = conn.createStatement(); ResultSet c = stmt1.executeQuery(all); 就像上面的语句 怎么把执行查询语句得出来的这样一个数据 传到另一个显示界面中 并且用表格展现出来 我之前想用session一条一条传 发现根本不可能 数据很多条 求大神解答!!!急
数据库接受不到前台传过来的数据
我遇到一个问题,问题是:我要实现的是在页面里面将金额变成手动输入的,然后在另一个页面也是这个,另一个页面保存了以后查看详细就与数据,但是这个就不行,查看了以后变成了0,我看jsp里面金额的logic都是一样内容,调用的方法里面也是一样的内容,跟踪了数据库之后数据库有金额这个字段但是值是0,请问可以帮我解决这个问题吗?在线等。。。。
linux下运行jsp站点访问另一台服务器oracle数据库错误。
本人是java菜鸟。 我在本机上开发了一个jsp+oracle站点。 本机环境:winXP+tomcat5.5+JDK1.5+Oracle 11g 本地运行没有任何问题。 但是部署到服务器上就报错。 两台服务器,一台存放应用,一台存放数据库。 应用服务器环境是linux系统+JDK1.5+tomcat5.5 数据库服务器是oracle 10g 然后我进行了如下的测试: 1、启动应用服务器上的tomcat,没有错误。 2、我写了个测试的站点,没有进行数据库连接操作,只输出一些信息,上传到应用服务器,没有错误。 3、我用PLSQL Developer远程连接数据库服务器上的oracle 10g 没有错误,成功连接。 4、但是我写一个测试站点,尝试连接数据库服务器的oracle 10g ,传到应用服务器上,运行就会报错。 数据库引擎我换成了10g的引擎了。 搞不懂,哪位大侠帮帮我啊。。。。。。 找不到原因啊。。。。
爬虫福利二 之 妹子图网MM批量下载
爬虫福利一:27报网MM批量下载    点击 看了本文,相信大家对爬虫一定会产生强烈的兴趣,激励自己去学习爬虫,在这里提前祝:大家学有所成! 目标网站:妹子图网 环境:Python3.x 相关第三方模块:requests、beautifulsoup4 Re:各位在测试时只需要将代码里的变量 path 指定为你当前系统要保存的路径,使用 python xxx.py 或IDE运行即可。
Java学习的正确打开方式
在博主认为,对于入门级学习java的最佳学习方法莫过于视频+博客+书籍+总结,前三者博主将淋漓尽致地挥毫于这篇博客文章中,至于总结在于个人,实际上越到后面你会发现学习的最好方式就是阅读参考官方文档其次就是国内的书籍,博客次之,这又是一个层次了,这里暂时不提后面再谈。博主将为各位入门java保驾护航,各位只管冲鸭!!!上天是公平的,只要不辜负时间,时间自然不会辜负你。 何谓学习?博主所理解的学习,它
大学四年自学走来,这些私藏的实用工具/学习网站我贡献出来了
大学四年,看课本是不可能一直看课本的了,对于学习,特别是自学,善于搜索网上的一些资源来辅助,还是非常有必要的,下面我就把这几年私藏的各种资源,网站贡献出来给你们。主要有:电子书搜索、实用工具、在线视频学习网站、非视频学习网站、软件下载、面试/求职必备网站。 注意:文中提到的所有资源,文末我都给你整理好了,你们只管拿去,如果觉得不错,转发、分享就是最大的支持了。 一、电子书搜索 对于大部分程序员...
linux系列之常用运维命令整理笔录
本博客记录工作中需要的linux运维命令,大学时候开始接触linux,会一些基本操作,可是都没有整理起来,加上是做开发,不做运维,有些命令忘记了,所以现在整理成博客,当然vi,文件操作等就不介绍了,慢慢积累一些其它拓展的命令,博客不定时更新 顺便拉下票,我在参加csdn博客之星竞选,欢迎投票支持,每个QQ或者微信每天都可以投5票,扫二维码即可,http://m234140.nofollow.ax.
比特币原理详解
一、什么是比特币 比特币是一种电子货币,是一种基于密码学的货币,在2008年11月1日由中本聪发表比特币白皮书,文中提出了一种去中心化的电子记账系统,我们平时的电子现金是银行来记账,因为银行的背后是国家信用。去中心化电子记账系统是参与者共同记账。比特币可以防止主权危机、信用风险。其好处不多做赘述,这一层面介绍的文章很多,本文主要从更深层的技术原理角度进行介绍。 二、问题引入 假设现有4个人...
程序员接私活怎样防止做完了不给钱?
首先跟大家说明一点,我们做 IT 类的外包开发,是非标品开发,所以很有可能在开发过程中会有这样那样的需求修改,而这种需求修改很容易造成扯皮,进而影响到费用支付,甚至出现做完了项目收不到钱的情况。 那么,怎么保证自己的薪酬安全呢? 我们在开工前,一定要做好一些证据方面的准备(也就是“讨薪”的理论依据),这其中最重要的就是需求文档和验收标准。一定要让需求方提供这两个文档资料作为开发的基础。之后开发
网页实现一个简单的音乐播放器(大佬别看。(⊙﹏⊙))
今天闲着无事,就想写点东西。然后听了下歌,就打算写个播放器。 于是乎用h5 audio的加上js简单的播放器完工了。 欢迎 改进 留言。 演示地点跳到演示地点 html代码如下`&lt;!DOCTYPE html&gt; &lt;html&gt; &lt;head&gt; &lt;title&gt;music&lt;/title&gt; &lt;meta charset="utf-8"&gt
Python十大装B语法
Python 是一种代表简单思想的语言,其语法相对简单,很容易上手。不过,如果就此小视 Python 语法的精妙和深邃,那就大错特错了。本文精心筛选了最能展现 Python 语法之精妙的十个知识点,并附上详细的实例代码。如能在实战中融会贯通、灵活使用,必将使代码更为精炼、高效,同时也会极大提升代码B格,使之看上去更老练,读起来更优雅。 1. for - else 什么?不是 if 和 else 才
数据库优化 - SQL优化
前面一篇文章从实例的角度进行数据库优化,通过配置一些参数让数据库性能达到最优。但是一些“不好”的SQL也会导致数据库查询变慢,影响业务流程。本文从SQL角度进行数据库优化,提升SQL运行效率。 判断问题SQL 判断SQL是否有问题时可以通过两个表象进行判断: 系统级别表象 CPU消耗严重 IO等待严重 页面响应时间过长
2019年11月中国大陆编程语言排行榜
2019年11月2日,我统计了某招聘网站,获得有效程序员招聘数据9万条。针对招聘信息,提取编程语言关键字,并统计如下: 编程语言比例 rank pl_ percentage 1 java 33.62% 2 c/c++ 16.42% 3 c_sharp 12.82% 4 javascript 12.31% 5 python 7.93% 6 go 7.25% 7
通俗易懂地给女朋友讲:线程池的内部原理
餐厅的约会 餐盘在灯光的照耀下格外晶莹洁白,女朋友拿起红酒杯轻轻地抿了一小口,对我说:“经常听你说线程池,到底线程池到底是个什么原理?”我楞了一下,心里想女朋友今天是怎么了,怎么突然问出这么专业的问题,但做为一个专业人士在女朋友面前也不能露怯啊,想了一下便说:“我先给你讲讲我前同事老王的故事吧!” 大龄程序员老王 老王是一个已经北漂十多年的程序员,岁数大了,加班加不动了,升迁也无望,于是拿着手里
经典算法(5)杨辉三角
杨辉三角 是经典算法,这篇博客对它的算法思想进行了讲解,并有完整的代码实现。
腾讯算法面试题:64匹马8个跑道需要多少轮才能选出最快的四匹?
昨天,有网友私信我,说去阿里面试,彻底的被打击到了。问了为什么网上大量使用ThreadLocal的源码都会加上private static?他被难住了,因为他从来都没有考虑过这个问题。无独有偶,今天笔者又发现有网友吐槽了一道腾讯的面试题,我们一起来看看。 腾讯算法面试题:64匹马8个跑道需要多少轮才能选出最快的四匹? 在互联网职场论坛,一名程序员发帖求助到。二面腾讯,其中一个算法题:64匹
面试官:你连RESTful都不知道我怎么敢要你?
面试官:了解RESTful吗? 我:听说过。 面试官:那什么是RESTful? 我:就是用起来很规范,挺好的 面试官:是RESTful挺好的,还是自我感觉挺好的 我:都挺好的。 面试官:… 把门关上。 我:… 要干嘛?先关上再说。 面试官:我说出去把门关上。 我:what ?,夺门而去 文章目录01 前言02 RESTful的来源03 RESTful6大原则1. C-S架构2. 无状态3.统一的接
JDK12 Collectors.teeing 你真的需要了解一下
前言 在 Java 12 里面有个非常好用但在官方 JEP 没有公布的功能,因为它只是 Collector 中的一个小改动,它的作用是 merge 两个 collector 的结果,这句话显得很抽象,老规矩,我们先来看个图(这真是一个不和谐的图????): 管道改造经常会用这个小东西,通常我们叫它「三通」,它的主要作用就是将 downstream1 和 downstre...
为啥国人偏爱Mybatis,而老外喜欢Hibernate/JPA呢?
关于SQL和ORM的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行了一番讨论,感触还是有一些,于是就有了今天这篇文。 声明:本文不会下关于Mybatis和JPA两个持久层框架哪个更好这样的结论。只是摆事实,讲道理,所以,请各位看官勿喷。 一、事件起因 关于Mybatis和JPA孰优孰劣的问题,争论已经很多年了。一直也没有结论,毕竟每个人的喜好和习惯是大不相同的。我也看
SQL-小白最佳入门sql查询一
不要偷偷的查询我的个人资料,即使你再喜欢我,也不要这样,真的不好;
项目中的if else太多了,该怎么重构?
介绍 最近跟着公司的大佬开发了一款IM系统,类似QQ和微信哈,就是聊天软件。我们有一部分业务逻辑是这样的 if (msgType = "文本") { // dosomething } else if(msgType = "图片") { // doshomething } else if(msgType = "视频") { // doshomething } else { // doshom...
【图解经典算法题】如何用一行代码解决约瑟夫环问题
约瑟夫环问题算是很经典的题了,估计大家都听说过,然后我就在一次笔试中遇到了,下面我就用 3 种方法来详细讲解一下这道题,最后一种方法学了之后保证让你可以让你装逼。 问题描述:编号为 1-N 的 N 个士兵围坐在一起形成一个圆圈,从编号为 1 的士兵开始依次报数(1,2,3…这样依次报),数到 m 的 士兵会被杀死出列,之后的士兵再从 1 开始报数。直到最后剩下一士兵,求这个士兵的编号。 1、方...
致 Python 初学者
欢迎来到“Python进阶”专栏!来到这里的每一位同学,应该大致上学习了很多 Python 的基础知识,正在努力成长的过程中。在此期间,一定遇到了很多的困惑,对未来的学习方向感到迷茫。我非常理解你们所面临的处境。我从2007年开始接触 python 这门编程语言,从2009年开始单一使用 python 应对所有的开发工作,直至今天。回顾自己的学习过程,也曾经遇到过无数的困难,也曾经迷茫过、困惑过。开办这个专栏,正是为了帮助像我当年一样困惑的 Python 初学者走出困境、快速成长。希望我的经验能真正帮到你
“狗屁不通文章生成器”登顶GitHub热榜,分分钟写出万字形式主义大作
一、垃圾文字生成器介绍 最近在浏览GitHub的时候,发现了这样一个骨骼清奇的雷人项目,而且热度还特别高。 项目中文名:狗屁不通文章生成器 项目英文名:BullshitGenerator 根据作者的介绍,他是偶尔需要一些中文文字用于GUI开发时测试文本渲染,因此开发了这个废话生成器。但由于生成的废话实在是太过富于哲理,所以最近已经被小伙伴们给玩坏了。 他的文风可能是这样的: 你发现,...
程序员:我终于知道post和get的区别
是一个老生常谈的话题,然而随着不断的学习,对于以前的认识有很多误区,所以还是需要不断地总结的,学而时习之,不亦说乎
GitHub标星近1万:只需5秒音源,这个网络就能实时“克隆”你的声音
作者 | Google团队 译者 | 凯隐 编辑 | Jane 出品 | AI科技大本营(ID:rgznai100) 本文中,Google 团队提出了一种文本语音合成(text to speech)神经系统,能通过少量样本学习到多个不同说话者(speaker)的语音特征,并合成他们的讲话音频。此外,对于训练时网络没有接触过的说话者,也能在不重新训练的情况下,仅通过未知...
《程序人生》系列-这个程序员只用了20行代码就拿了冠军
你知道的越多,你不知道的越多 点赞再看,养成习惯GitHub上已经开源https://github.com/JavaFamily,有一线大厂面试点脑图,欢迎Star和完善 前言 这一期不算《吊打面试官》系列的,所有没前言我直接开始。 絮叨 本来应该是没有这期的,看过我上期的小伙伴应该是知道的嘛,双十一比较忙嘛,要值班又要去帮忙拍摄年会的视频素材,还得搞个程序员一天的Vlog,还要写BU...
加快推动区块链技术和产业创新发展,2019可信区块链峰会在京召开
11月8日,由中国信息通信研究院、中国通信标准化协会、中国互联网协会、可信区块链推进计划联合主办,科技行者协办的2019可信区块链峰会将在北京悠唐皇冠假日酒店开幕。   区块链技术被认为是继蒸汽机、电力、互联网之后,下一代颠覆性的核心技术。如果说蒸汽机释放了人类的生产力,电力解决了人类基本的生活需求,互联网彻底改变了信息传递的方式,区块链作为构造信任的技术有重要的价值。   1...
程序员把地府后台管理系统做出来了,还有3.0版本!12月7号最新消息:已在开发中有github地址
第一幕:缘起 听说阎王爷要做个生死簿后台管理系统,我们派去了一个程序员…… 996程序员做的梦: 第一场:团队招募 为了应对地府管理危机,阎王打算找“人”开发一套地府后台管理系统,于是就在地府总经办群中发了项目需求。 话说还是中国电信的信号好,地府都是满格,哈哈!!! 经常会有外行朋友问:看某网站做的不错,功能也简单,你帮忙做一下? 而这次,面对这样的需求,这个程序员...
网易云6亿用户音乐推荐算法
网易云音乐是音乐爱好者的集聚地,云音乐推荐系统致力于通过 AI 算法的落地,实现用户千人千面的个性化推荐,为用户带来不一样的听歌体验。 本次分享重点介绍 AI 算法在音乐推荐中的应用实践,以及在算法落地过程中遇到的挑战和解决方案。 将从如下两个部分展开: AI算法在音乐推荐中的应用 音乐场景下的 AI 思考 从 2013 年 4 月正式上线至今,网易云音乐平台持续提供着:乐屏社区、UGC...
【技巧总结】位运算装逼指南
位算法的效率有多快我就不说,不信你可以去用 10 亿个数据模拟一下,今天给大家讲一讲位运算的一些经典例子。不过,最重要的不是看懂了这些例子就好,而是要在以后多去运用位运算这些技巧,当然,采用位运算,也是可以装逼的,不信,你往下看。我会从最简单的讲起,一道比一道难度递增,不过居然是讲技巧,那么也不会太难,相信你分分钟看懂。 判断奇偶数 判断一个数是基于还是偶数,相信很多人都做过,一般的做法的代码如下...
【管理系统课程设计】美少女手把手教你后台管理
【文章后台管理系统】URL设计与建模分析+项目源码+运行界面 栏目管理、文章列表、用户管理、角色管理、权限管理模块(文章最后附有源码) 1. 这是一个什么系统? 1.1 学习后台管理系统的原因 随着时代的变迁,现如今各大云服务平台横空出世,市面上有许多如学生信息系统、图书阅读系统、停车场管理系统等的管理系统,而本人家里就有人在用烟草销售系统,直接在网上完成挑选、购买与提交收货点,方便又快捷。 试想,若没有烟草销售系统,本人家人想要购买烟草,还要独自前往药...
4G EPS 第四代移动通信系统
目录 文章目录目录4G 与 LTE/EPCLTE/EPC 的架构E-UTRANE-UTRAN 协议栈eNodeBEPCMMES-GWP-GWHSSLTE/EPC 协议栈概览 4G 与 LTE/EPC 4G,即第四代移动通信系统,提供了 3G 不能满足的无线网络宽带化,主要提供数据(上网)业务。而 LTE(Long Term Evolution,长期演进技术)是电信领域用于手机及数据终端的高速无线通...
相关热词 c#选择结构应用基本算法 c# 收到udp包后回包 c#oracle 头文件 c# 序列化对象 自定义 c# tcp 心跳 c# ice连接服务端 c# md5 解密 c# 文字导航控件 c#注册dll文件 c#安装.net
立即提问