今天主要说一下在URL 中使用?传值的问题。在显式的使用get方法获取特点数据时,一般会通过?传递参数值,sevlert根据参数在数据库中对应的查找内容。所以,SQL语句需要拼接,要加上后面的参数。参数的获取使用request.getParameter()方法,里面注明获得参数的名称。

  

import com.alibaba.fastjson.JSONObject;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.*;
import java.util.*;
import java.util.Date; @WebServlet("/hello")//注解,免于在xml注册,/hello表示在主页后加/hello访问此页面
public class test extends HttpServlet {
private String message;
public void init() throws ServletException{ }
public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException {//相应不带参数的get String dbURL="jdbc:sqlserver://127.0.0.1:1433;DatabaseName=S-T";
String userName="sa";
String userPwd="111";
List<student> students=new ArrayList<>();
Connection dbConn=null;
try {
String driverName="com.microsoft.sqlserver.jdbc.SQLServerDriver";
Class.forName(driverName);//反射JDBC包,这个一定要加,不然会报错
// 设置响应内容类型
response.setContentType("text/html");
response.setCharacterEncoding("UTF-8"); dbConn= DriverManager.getConnection(dbURL,userName,userPwd);
String sql="select * from Student where Sage="+request.getParameter("age");//拼接SQL语句
System.out.println(sql);
Statement statement=dbConn.createStatement();
ResultSet resultSet=statement.executeQuery(sql);
while (resultSet.next()){
student st=new student();
st.setName(resultSet.getString("Sname"));
st.setId(resultSet.getString("Sno"));
st.setSex(resultSet.getString("Ssex"));
st.setAge(resultSet.getString("Sage"));
students.add(st);
}
response.getWriter().println(JSONObject.toJSONString(students));//注意这里不是控制台输出了,是HttpServletResponse,用于返回json给http请求方
//response.getWriter().println(request.getParameter("age"));
} catch (SQLException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
finally {
try
{//关闭连接
if(dbConn!=null)
{
dbConn.close();
dbConn=null;
}
}
catch(Exception ex)
{
}
} }
}

  尝试查找年龄为20岁的学生信息

  

  输出

JAVA写接口傻瓜(%)教程(五)的更多相关文章

  1. JAVA写接口傻瓜(?)教程(一)

    当一个安卓开发人员/微信小程序开发者想做点什么的时候,如果他发现没有合适的接口,那么单机安卓.本地数据库emmm.没了接口就好像老人没了拐杖.盲人没了墨镜,完全可以称得上是举步维艰.生活艰难到需要自己 ...

  2. JAVA写接口傻瓜(#)教程(四)

    接上篇 7.sevlert 啊啊啊终于写到最重要的实现部分了.Servlet = Service + Applet,表示小服务程序.Servlet 是在服务器上运行的小程序.这个词是在 Java ap ...

  3. JAVA写接口傻瓜($)教程(三)

    接上一篇 补充:事实上java的类需要在src文件夹里写,classes文件夹只是会同步src文件夹里的类.如果在classes文件夹里操作java类,是会提示文件只读的.src文件夹中进行代码编写 ...

  4. JAVA写接口傻瓜(!)教程(二)

    接上一篇 3.数据库SQL sever配置 理论上来说,java web项目连接什么数据库都行,但是我电脑上SQL sever用了三年了,各种操作都比较熟悉,所以也懒得再用My SQL.想用My SQ ...

  5. java写接口

    1.先导spring包 2.首先配置spring.xml的监听web.xml配置. <context-param> <param-name>contextConfigLocat ...

  6. 五:用JAVA写一个阿里云VPC Open API调用程序

    用JAVA写一个阿里云VPC Open API调用程序 摘要:用JAVA拼出来Open API的URL 引言 VPC提供了丰富的API接口,让网络工程是可以通过API调用的方式管理网络资源.用程序和软 ...

  7. JAVA之旅(三十五)——完结篇,终于把JAVA写完了,真感概呐!

    JAVA之旅(三十五)--完结篇,终于把JAVA写完了,真感概呐! 这篇博文只是用来水经验的,写这个系列是因为我自己的java本身也不是特别好,所以重温了一下,但是手比较痒于是就写出了这三十多篇博客了 ...

  8. java之jvm学习笔记五(实践写自己的类装载器)

    java之jvm学习笔记五(实践写自己的类装载器) 课程源码:http://download.csdn.net/detail/yfqnihao/4866501 前面第三和第四节我们一直在强调一句话,类 ...

  9. java为移动端写接口

    java作为一门后端语言,其厉害之处在于web,大家比较熟知的各种网络应用,java都能做,那么在这个移动优先的时代,如何继续发挥java的强大呢.通常是让java作为一个app的服务端,为app客户 ...

随机推荐

  1. ok6410如何从sdram中启动uboot 调试 这是一个猜想还没有验证

    1\在smdk6410.h中定义宏 //#define CONFIG_SKIP_LOWLEVEL_INIT 1 //#define CONFIG_SKIP_RELOCATE_UBOOT 12\将编译的 ...

  2. Saiku资源帖

    一.精选 1.李秋 随笔分类 - pentaho 二.概述 1.Saiku + Kylin 多维分析平台探索 三.Saiku+Kylin 1.使用Saiku+Kylin构建多维分析OLAP平台 2.使 ...

  3. js开发环境配置

    使用Sublime Text3作为主要开发工具.下载地址:http://www.sublimetext.com/3. sublime拥有大量实用插件,使用插件需要先下载PackageControl以便 ...

  4. java第三次上机

    import java.util.*; class student{ String name; char sex; int age; String number; double score[]=new ...

  5. 通过Long类型的出生日期算年龄

    package com.utils; import java.text.ParseException; import java.text.SimpleDateFormat; import java.u ...

  6. mysql的sql_mode设置

    参考官方文档: mysql可以为不同的客户端设置不同的sql_mode,并且每个应用能够设置他自己的会话级别的sql_mode.sql_mode会影响sql语法以及mysql显示数据的正确性. Whe ...

  7. BIOS备忘录之SPI(fingerprint)设备

    Reset和INT信号使用的是GPIO功能,需要显式的使用(INT信号使用了GPIO的int number,RST信号使用了GPIO的absolute number): 问题举例 漏电导致功能异常:在 ...

  8. 组装一台PRUSA I3打印机

    闲来无事,又搞了台机.这样下去顶不住了.草. 还是咸鱼购买,但是这台收到的时候比我以前任何一台都要散,几乎重新装了一台. 此处省略收到货时候的零件图,省略装机图. 不得不提的是,原机用的山寨melzi ...

  9. opencv学习之路(29)、轮廓查找与绘制(八)——轮廓特征属性及应用

    一.简介 HSV颜色空间(hue色调,saturation饱和度,value亮度) 二.HSV滑动条 #include "opencv2/opencv.hpp" #include ...

  10. 图像处理 Matlab实现线性点运算、非线性点运算、点运算与直方图、直方图均衡化

    今天,我们学习了直方图.于是乎,回来我就用matlab代码实现一下.昨天受到道路检测老师课上一个内容的影响(对于道路裂缝的检测,我突发奇想,如果对于道路图像进行操作,是否能够让裂缝与道路分离,使得图像 ...