• jsp+servlet+jdbc实现表单提交


    1.新建一个maven工程,选webapp模板

    2.安装tomcat

    https://tomcat.apache.org/download-80.cgi 下载解压到自定义目录上

    ps:在全局变量加上JAVA_HOME变量指向JDK(例如:D:Javav1.8),tomcat才能正常运行

    3.eclipse配置server

    Windows-->Preferences-->Server-->Runtime Environments

    添加tomcat

    4.增加tomcat的libary

    工程右击--->Build Path --->Configure Build path

    选择刚刚加到eclipse的tomcat

    5.编写jsp

    <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>Insert title here</title>
    </head>
    <body>
        <form action="${pageContext.request.contextPath}/saveUserInfo" method="GET">
            username:<input type="text" name="username"></input><br/>
            adress:<input type="text" name="address"></input>
            <input type="submit" value="保存"/>
        </form>
    </body>
    </html>

    6.编写映射到servlet接口类的配置文件,web.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://java.sun.com/xml/ns/javaee   
        http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
        <servlet>
            <servlet-name>hello</servlet-name>
            <servlet-class>amie.servlet.helloServlet</servlet-class>
        </servlet>
        <servlet-mapping>
            <servlet-name>hello</servlet-name>
            <url-pattern>/saveUserInfo</url-pattern>
        </servlet-mapping>
    </web-app>  

    7.编写servlet类

    从上面可以得到,tomcat服务器的路径“/saveUserInfo”已经映射到“amie.servlet.helloServlet”这个类上了

    package amie.servlet;
    
    import java.io.IOException;
    
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    
    import jdbc.jdbc;
    
    public class helloServlet extends HttpServlet {
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            response.setCharacterEncoding("gbk");
            String username = new String(request.getParameter("username").getBytes("UTF8"));
            String address = new String(request.getParameter("address").getBytes("UTF8"));
            jdbc mj = new jdbc();
            try {
                mj.insert(username, address);
                response.getWriter().println("写入成功");
            } catch (Exception e) {
                response.getWriter().print(e);
            }
        }
    }

    doGet、doPost等方法会对应路径“/saveUserInfo”的GET、POST的方法

    8.编写jdbc

    我们上面用了一个jdbc.jdbc类的insert方法

    package jdbc;
    
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.PreparedStatement;
    
    public class jdbc {
        public void insert(String name, String address) throws Exception{
            String url = "jdbc:mysql://localhost:3306/20171113";
            String userName = "root";
            String password = "";
            Connection conn = DriverManager.getConnection(url,userName,password);
            String sql = "INSERT INTO user(username,address) VALUES(?,?)";
            PreparedStatement ps = conn.prepareStatement(sql);
            ps.setString(1, name);
            ps.setString(2, address);
            ps.execute();
            conn.close();
        }
    }

    这里值得一提的是:jdbc的mysql驱动(mysql-connector-java-x.x.x-bin)一定要加在jrelibext下,因为此时已经运行在tomcat上脱离了eclipse,runtime的依赖包一定要到java的安装目录下获取。

    9.运行

    项目右击,run as --> run on server

    保存后

    数据库也成功存入数据

  • 相关阅读:
    Android 获取SDCard中某个目录下图片
    Android ListView中 每一项都有不同的布局
    Listview 异步加载图片之优化篇(有图有码有解释)
    Android 实现ListView异步加载图片
    android ListView异步加载图片(双缓存)
    使用 COM 风格的编程接口
    deb包+软件图标+添加到系统菜单+举例安装卸载
    罗将公布手机锤,我感到深深的内疚
    【 D3.js 入门系列 --- 9.6 】 生产的包图
    Junit指定测试运行顺序
  • 原文地址:https://www.cnblogs.com/amiezhang/p/9653336.html
Copyright © 2020-2023  润新知