当前位置:编程学习 > JAVA >>

初学JAVA,却有一个任务,开发一个JSP页面的小程序,有谁可帮忙?小小报酬。

大概说下是什么,开发一个jsp页面的小程序,程序要根据条件查询oracle里数据并显示在JSP页面上,之后把这些显示出来

的数据上传到sql server数据库的B表的相应字段。

详细请加QQ 1123624231。注明小程序。 --------------------编程问答-------------------- 用jdbc连接数据库就好了,很简单的 --------------------编程问答-------------------- jsp servlet的例子

java jsp+servlet实现登录网页设计  
这次涉及到四个文件:
登录页面:login.jsp
登录成功欢迎页面:success.jsp
登录失败页面:fail.jsp
Servlet处理文件:LoginServlet.java
其实还涉及到一个文件:web.xml,这个后面再说:
下面分别介绍这几个文件:
//--------------------------------------------------------------------------------------------------------------------
LoginServlet.java   内容:
package org.cai.servlet ;
import java.sql.* ;
import java.io.* ;
import javax.servlet.http.* ;
import javax.servlet.* ;
public class LoginServlet extends HttpServlet implements Servlet{
 public LoginServlet(){
 }
 
 protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{
 
 }
// protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{
//  System.out.println("-------------------------") ;
//  doPost(request, response) ;
// }
 protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{
  response.setContentType("text/html;charset=gb2312") ;
  request.setCharacterEncoding("gb2312") ;
  String result = "" ;
  //获取用户名
  String username = request.getParameter("username") ;
  String psw = request.getParameter("password") ;
  if ((username == "") || (username==null) || (username.length() > 20 )){
   try{
    result = "请输入用户名(不能超过20个字符)!" ;
    request.setAttribute("message" ,result) ;
    response.sendRedirect("login.jsp") ;
   }catch(Exception e){
    e.printStackTrace() ;
   }
  }
  if ((psw == "") || (psw==null) || (psw.length() > 20 )){
   try{
    result = "请输入密码(不能超过20个字符)!" ;
    request.setAttribute("message" ,result) ;
    response.sendRedirect("login.jsp") ;
   }catch(Exception e){
    e.printStackTrace() ;
   }
  }
  
  //登记JDBC驱动程序
  try{
   Class.forName("org.gjt.mm.mysql.Driver") ;
  }catch(ClassNotFoundException e){
   e.printStackTrace() ;
   System.out.println("Class Not Found Exception . ") ;
  }
  //连接URL
  String url ="jdbc:mysql://localhost:3306/learnJSP" ;
  Connection conn = null ;
  Statement stmt = null ;
  ResultSet rs = null ;
  
  try{
   conn = DriverManager.getConnection(url, "root", "root") ;
   stmt = conn.createStatement() ;
   //SQL语句
   String sql ="select * from userInfo where username='"+username+"' and userpsw= '"+psw+"'" ;
   rs = stmt.executeQuery(sql) ;//返回查询结果
  }catch(SQLException e){
   e.printStackTrace() ;
  }
   HttpSession session =  request.getSession() ;
   session.setAttribute("username", username) ;
   //System.out.println("+++++++++++++++++++++++"+ username) ;
  try{
   if (rs.next()){ //如果记录集非空,表明有匹配的用户名和密码,登陆成功
       // 登录成功后将username设置为session变量的username
          // 这样在后面就可以通过 session.getAttribute("username") 来获取用户名,
          // 同时这样还可以作为用户登录与否的判断依据
    session.setAttribute("age",rs.getString("age")) ;
    session.setAttribute("sex",rs.getString("sex")) ;
    session.setAttribute("weight",rs.getString("weight")) ;
    response.sendRedirect("success.jsp") ;
   }else{
    session.setAttribute("message", "用户名或密码不匹配。");
    response.sendRedirect("fail.jsp") ;
   }
  }catch(SQLException e){
   e.printStackTrace() ;
  }
 }
 
 private static final long serialVersionUID = 1L;
}
//--------------------------------------------------------------------------------------------------------------------
login.jsp内容:
<%@ page language="java" contentType="text/html;charset=gb2312"%>
<html>
 <head>
  <title>登陆</title>
 </head>
 <body>
  <form method="POST" name="frmLogin" action="LoginServlet">
   <h1 align="center">用户登录</h1><br />
   <center>
    <table border=1>
     <tr>
      <td>用户名:</td>
      <td>
       <input type="text" name="username" value="Your name" size="20" maxlength="20" onfocus="if (this.value=='Your name')  this.value='';" />
      </td>
     </tr>
     <tr>
      <td>密  码:</td>
      <td>
       <input type="password" name="password" value="Your password" size="20" maxlength="20" onfocus="if (this.value=='Your password')  this.value='';" />
      </td>
     </tr>
     <tr>
      <td>
       <input type="submit" name="Submit" value="提交" onClick="return validateLogin()" />
      </td>
      <td>
       <input type="reset" name="Reset" value="重置" />
      </td>
     </tr>
    </table>
   </center>
  </form>
  <script language="javascript">
   function validateLogin(){
    var sUserName = document.frmLogin.username.value ;
    var sPassword = document.frmLogin.password.value ;
    if ((sUserName =="") || (sUserName=="Your name")){
     alert("请输入用户名!");
     return false ;
    }
    
    if ((sPassword =="") || (sPassword=="Your password")){
     alert("请输入密码!");
     return false ;
    }
   }
  </script>
 </body>
</html>

//--------------------------------------------------------------------------------------------------------------------
success.jsp 内容;
<%@ page language="java" contentType="text/html;charset=gb2312" pageEncoding ="gb2312"%>
<html>
 <head>
  <title>欢迎</title>
 </head>
 <body>
  <%
   String userName = (String)session.getAttribute("username") ;
   String age = (String)session.getAttribute("age") ;
   String weight = (String)session.getAttribute("weight") ;
   String sex = (String)session.getAttribute("sex") ;
   System.out.println("性别:A" + sex +"A")  ;
   if (sex.trim().equals("M")) {
    sex ="男" ;
   }else{
    sex = "女" ;
   }
  %>
  <div align="center">
   <%=userName %>
   欢迎您,登陆成功!<br />
   <font color="blue">登陆用户信息:</font>
   <table border =1 >
    <tr>
     <td> 姓名: </td>
     <td>  <%=userName %>  </td>
    </tr>
    <tr>
     <td> 年龄: </td>
     <td>  <%=age %>  </td>
    </tr>
    <tr>
     <td> 体重: </td>
     <td>  <%=weight %> kg </>
    </tr>
    <tr>
     <td> 性别: </td>
     <td>  <%=sex %>  </>
    </tr>
   </table>
   <a href="login.jsp">返回</a>
  </div>
 </body>
</html>

//--------------------------------------------------------------------------------------------------------------------
fail.jsp 内容:
<%@ page language="java" contentType="text/html;charset=gb2312" pageEncoding ="gb2312"%>
<html>
 <head>
  <title>登陆失败</title>
 </head>
 <body>
  <%
   String userName = (String)session.getAttribute("username") ;
   String msg  = (String)session.getAttribute("message") ;
  %>
  <div align="center">
   <%=userName %>
   对不起,登陆失败!<br />
   <font color="red">原因: </font>
   <%=msg %>
   <br/>
   <br/>
   5秒后将返回登陆界面。
  </div>
   
   <%
     response.setHeader("Refresh","5;URL=/learnJSP/login.jsp");   
    %>
 </body>
</html>

//--------------------------------------------------------------------------------------------------------------------
  mysql数据库中需要创建数据库learnJSP,其中创建表userInfo 创建表语句为:
  create database learnJSP ;
  use learnJSP 
  create table userInfo(id int not null primary key,username char(20) not null,userpsw char(20) ,age int ,weight int ,sex enum('M','F')) ;
  
  需要把连接mysql的jar包放到项目的lib目录中
//--------------------------------------------------------------------------------------------------------------------
web.xml 内容:
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE web-app
    PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
    "http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
 <welcome-file-list>
  <welcome-file>index.jsp</welcome-file>
 </welcome-file-list>
 
 <servlet>
        <servlet-name>
            LoginServlet
        </servlet-name>
        <servlet-class>
            org.cai.servlet.LoginServlet
        </servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>LoginServlet</servlet-name>
        <url-pattern>/LoginServlet</url-pattern>
    </servlet-mapping>
 
</web-app>
//-------------------------------------------------------------------------------------------------------------------- 
--------------------编程问答-------------------- 自己看这个改了 ,主要是修改 


 //登记JDBC驱动程序
后面的 ,你分别连接oracle  --orcConn 、ServerSQL  --serConn ;
1、查出数据到ResultSet rsSrc ;中 ;
2、PreparedStatement pstmte = serConn....
3、然后 用 while(rsSrc.next()){
    pstmte.setString(1,rsSrc.get(1)) ;
   .
   .
   .
   pstmte.execute() ;
}

--------------------编程问答-------------------- java jsp+servlet实现登录网页设计 2011-1-19 18:04阅读(0)下一篇:java HttpSession... |返回日志列表 赞赞赞赞转载分享评论复制地址编辑 
 
这次涉及到四个文件:
登录页面:login.jsp
登录成功欢迎页面:success.jsp
登录失败页面:fail.jsp
Servlet处理文件:LoginServlet.java
其实还涉及到一个文件:web.xml,这个后面再说:
下面分别介绍这几个文件:
//--------------------------------------------------------------------------------------------------------------------
LoginServlet.java   内容:
package org.cai.servlet ;
import java.sql.* ;
import java.io.* ;
import javax.servlet.http.* ;
import javax.servlet.* ;
public class LoginServlet extends HttpServlet implements Servlet{
 public LoginServlet(){
 }
 
 protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{
 
 }
// protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{
//  System.out.println("-------------------------") ;
//  doPost(request, response) ;
// }
 protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{
  response.setContentType("text/html;charset=gb2312") ;
  request.setCharacterEncoding("gb2312") ;
  String result = "" ;
  //获取用户名
  String username = request.getParameter("username") ;
  String psw = request.getParameter("password") ;
  if ((username == "") || (username==null) || (username.length() > 20 )){
   try{
    result = "请输入用户名(不能超过20个字符)!" ;
    request.setAttribute("message" ,result) ;
    response.sendRedirect("login.jsp") ;
   }catch(Exception e){
    e.printStackTrace() ;
   }
  }
  if ((psw == "") || (psw==null) || (psw.length() > 20 )){
   try{
    result = "请输入密码(不能超过20个字符)!" ;
    request.setAttribute("message" ,result) ;
    response.sendRedirect("login.jsp") ;
   }catch(Exception e){
    e.printStackTrace() ;
   }
  }
  
  //登记JDBC驱动程序
  try{
   Class.forName("org.gjt.mm.mysql.Driver") ;
  }catch(ClassNotFoundException e){
   e.printStackTrace() ;
   System.out.println("Class Not Found Exception . ") ;
  }
  //连接URL
  String url ="jdbc:mysql://localhost:3306/learnJSP" ;
  Connection conn = null ;
  Statement stmt = null ;
  ResultSet rs = null ;
  
  try{
   conn = DriverManager.getConnection(url, "root", "root") ;
   stmt = conn.createStatement() ;
   //SQL语句
   String sql ="select * from userInfo where username='"+username+"' and userpsw= '"+psw+"'" ;
   rs = stmt.executeQuery(sql) ;//返回查询结果
  }catch(SQLException e){
   e.printStackTrace() ;
  }
   HttpSession session =  request.getSession() ;
   session.setAttribute("username", username) ;
   //System.out.println("+++++++++++++++++++++++"+ username) ;
  try{
   if (rs.next()){ //如果记录集非空,表明有匹配的用户名和密码,登陆成功
       // 登录成功后将username设置为session变量的username
          // 这样在后面就可以通过 session.getAttribute("username") 来获取用户名,
          // 同时这样还可以作为用户登录与否的判断依据
    session.setAttribute("age",rs.getString("age")) ;
    session.setAttribute("sex",rs.getString("sex")) ;
    session.setAttribute("weight",rs.getString("weight")) ;
    response.sendRedirect("success.jsp") ;
   }else{
    session.setAttribute("message", "用户名或密码不匹配。");
    response.sendRedirect("fail.jsp") ;
   }
  }catch(SQLException e){
   e.printStackTrace() ;
  }
 }
 
 private static final long serialVersionUID = 1L;
}
//--------------------------------------------------------------------------------------------------------------------
login.jsp内容:
<%@ page language="java" contentType="text/html;charset=gb2312"%>
<html>
 <head>
  <title>登陆</title>
 </head>
 <body>
  <form method="POST" name="frmLogin" action="LoginServlet">
   <h1 align="center">用户登录</h1><br />
   <center>
    <table border=1>
     <tr>
      <td>用户名:</td>
      <td>
       <input type="text" name="username" value="Your name" size="20" maxlength="20" onfocus="if (this.value=='Your name')  this.value='';" />
      </td>
     </tr>
     <tr>
      <td>密  码:</td>
      <td>
       <input type="password" name="password" value="Your password" size="20" maxlength="20" onfocus="if (this.value=='Your password')  this.value='';" />
      </td>
     </tr>
     <tr>
      <td>
       <input type="submit" name="Submit" value="提交" onClick="return validateLogin()" />
      </td>
      <td>
       <input type="reset" name="Reset" value="重置" />
      </td>
     </tr>
    </table>
   </center>
  </form>
  <script language="javascript">
   function validateLogin(){
    var sUserName = document.frmLogin.username.value ;
    var sPassword = document.frmLogin.password.value ;
    if ((sUserName =="") || (sUserName=="Your name")){
     alert("请输入用户名!");
     return false ;
    }
    
    if ((sPassword =="") || (sPassword=="Your password")){
     alert("请输入密码!");
     return false ;
    }
   }
  </script>
 </body>
</html>

//--------------------------------------------------------------------------------------------------------------------
success.jsp 内容;
<%@ page language="java" contentType="text/html;charset=gb2312" pageEncoding ="gb2312"%>
<html>
 <head>
  <title>欢迎</title>
 </head>
 <body>
  <%
   String userName = (String)session.getAttribute("username") ;
   String age = (String)session.getAttribute("age") ;
   String weight = (String)session.getAttribute("weight") ;
   String sex = (String)session.getAttribute("sex") ;
   System.out.println("性别:A" + sex +"A")  ;
   if (sex.trim().equals("M")) {
    sex ="男" ;
   }else{
    sex = "女" ;
   }
  %>
  <div align="center">
   <%=userName %>
   欢迎您,登陆成功!<br />
   <font color="blue">登陆用户信息:</font>
   <table border =1 >
    <tr>
     <td> 姓名: </td>
     <td>  <%=userName %>  </td>
    </tr>
    <tr>
     <td> 年龄: </td>
     <td>  <%=age %>  </td>
    </tr>
    <tr>
     <td> 体重: </td>
     <td>  <%=weight %> kg </>
    </tr>
    <tr>
     <td> 性别: </td>
     <td>  <%=sex %>  </>
    </tr>
   </table>
   <a href="login.jsp">返回</a>
  </div>
 </body>
</html>

//--------------------------------------------------------------------------------------------------------------------
fail.jsp 内容:
<%@ page language="java" contentType="text/html;charset=gb2312" pageEncoding ="gb2312"%>
<html>
 <head>
  <title>登陆失败</title>
 </head>
 <body>
  <%
   String userName = (String)session.getAttribute("username") ;
   String msg  = (String)session.getAttribute("message") ;
  %>
  <div align="center">
   <%=userName %>
   对不起,登陆失败!<br />
   <font color="red">原因: </font>
   <%=msg %>
   <br/>
   <br/>
   5秒后将返回登陆界面。
  </div>
   
   <%
     response.setHeader("Refresh","5;URL=/learnJSP/login.jsp");   
    %>
 </body>
</html>

//--------------------------------------------------------------------------------------------------------------------
  mysql数据库中需要创建数据库learnJSP,其中创建表userInfo 创建表语句为:
  create database learnJSP ;
  use learnJSP 
  create table userInfo(id int not null primary key,username char(20) not null,userpsw char(20) ,age int ,weight int ,sex enum('M','F')) ;
  
  需要把连接mysql的jar包放到项目的lib目录中
//--------------------------------------------------------------------------------------------------------------------
web.xml 内容:
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE web-app
    PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
    "http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
 <welcome-file-list>
  <welcome-file>index.jsp</welcome-file>
 </welcome-file-list>
 
 <servlet>
        <servlet-name>
            LoginServlet
        </servlet-name>
        <servlet-class>
            org.cai.servlet.LoginServlet
        </servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>LoginServlet</servlet-name>
        <url-pattern>/LoginServlet</url-pattern>
    </servlet-mapping>
 
</web-app>
//-------------------------------------------------------------------------------------------------------------------- 
--------------------编程问答-------------------- 请求一个servlet,servlet中请求dao层,首先查数据,查到数据做两件事:
    1.插入sql server
    2.包装到list集合
然后servlet跳转页面,页面遍历集合 展示数据

用struts同理。     --------------------编程问答-------------------- public static boolean insertData(List rsList) {

boolean ret = false;
String sql = " insert into   AAAA_1(AAAA,BBBB, CCCC, DDDD, EEEE) "
+ "values(?, ?, to_date(? , 'yyyy-mm-dd hh24:mi:ss') , ?, ?) ";
try {
PreparedStatement pstmt = getOracleConn().prepareStatement(sql);
ResultSet rs = null;
for (int i = 0; i < rsList.size(); i++) {
rs = (ResultSet) rsList.get(i);
while (rs.next()) {


pstmt.setLong(1, getNextMsgId());
pstmt.setString(2, rs.getString("AAA"));
pstmt
.setString(3, rs.getString("MO_TIME").substring(0,
18));
pstmt.setString(4, rs.getString("BBBB"));
pstmt.setLong(5, rs.getLong("DDDD"));
pstmt.execute();
}

}

ret = true;
} catch (SQLException e) {
System.out.println(" 系统出现异常,请联系管理员.");
oracleConn = null; // 如果发生异常,把数据库连接清空,防止由于数据库连接中断,下次在取数据时,重新获取数据库连接
e.printStackTrace();
}
return ret;
} --------------------编程问答-------------------- 初学   让别人完全代劳。。。
不如先去看看现有的小例子 --------------------编程问答-------------------- 我表示压力很大 --------------------编程问答-------------------- 用 myeclipse 开发 很简单 --------------------编程问答-------------------- MyEclipse+MySQL 
你可以用框架 你可以用JSP+Servlet 你可以JSP+JSP 
--------------------编程问答-------------------- 难度是不大,但是要是来个传说中的架构师来秀下就好了。我也是初学者!
好期待哦。 --------------------编程问答-------------------- 只用过MYSQL和SQL SERVER,ORACLE还没研究过,不过思路很清楚啊,数据从ORACLE取出来,存在LIST里面(最好用泛型),之后无论你是显示还是另存都很简单啊,存储在SQL SERVER里的话用JDBC的批处理吧
--------------------编程问答-------------------- SSH全都解决了。。
然后写个显示方法 条件传回来就行了 --------------------编程问答--------------------
引用 13 楼 sd722522 的回复:
SSH全都解决了。。
然后写个显示方法 条件传回来就行了
支持 --------------------编程问答--------------------
引用 13 楼 sd722522 的回复:
SSH全都解决了。。
然后写个显示方法 条件传回来就行了
新手你让他用SSH?你会了他就会?不过我这倒是有一份SSH的项目,上学时候做的,楼主要的话可以发给你。你只需要加一个jdbc.properties配置一下Hibernate要用到的各项参数,然后在配置文件中调用就可以了。但是想让人家给你写JDBC连接的代码那是不用想了,简单不一定就不麻烦,这是一个问题,复制粘贴也需要时间的。找份差不多的项目改改就可以了,以后上班这也是提高工作效率的一种方法。
补充:Java ,  Web 开发
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,