WebServlet的使用

stm32cubeMX使用HAL库点亮LED流水灯 目录 阅读详情
用于实现对数据库中的数据进行访问并获取,将获取的数据转化成JSON数组
引入TomCat

image.png

链接数据库配置JDBCUntil
//mysql 5 和  8
//连接数据库四要素有没有变化?
//driver   5  com.mysql.jdbc.Driver  8 com.mysql.cj.jdbc.Driver
//url      5  可以不加任何参数       8 有的需要添加时区。 shanghai
//username  root
//password  root
private static String driver="com.mysql.jdbc.Driver";
private static String url="jdbc:mysql://localhost:3306/pokemon?useSSL=false";
private static String username="root";
private static String password="justin";

static { //只会执行一次。

    try {
        //直接进行类加载 加载驱动 只需要加载一次。
        Class.forName(driver);
    } catch (ClassNotFoundException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
}
//工厂模式 创建一个方法获取链接对象
public static Connection getConnection() throws SQLException{
return DriverManager.getConnection(url,username,password);
}
Servlet项目创建
创建实体类

使用lombok可以简化shux

   <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>1.18.20</version>
        </dependency>

实体类对象

@Data
public class Fication {
    private String classfication;
    private Integer pokemon_count;
}

创建DAO包
public interface GoodsDAO {
    //传说级宝可梦的六种属性值
    public List<Goods> findattackTop5() throws SQLException;
    //各个世代的宝可梦数量
    public List<pokecount> findpokemon() throws SQLException;
    //所有宝可梦的身高体重属性
    public  List<shuxin> findAll() throws  SQLException;
    //宝可梦为男性的概率
    public  List<Male> findsex() throws  SQLException;
    //宝可梦各个主属性的数量
    public  List<Type> findtype() throws  SQLException;
    //宝可梦捕捉概率和种族值
    public  List<Capture> findRate() throws  SQLException;
    //宝可梦的精灵类型
    public List<Fication> findFaction() throws SQLException;
}

dao的实现类

public class GoodsDAOImpl implements GoodsDAO {

    private Connection conn=null;

    @Override
    public List<Goods> findattackTop5() throws SQLException {
        // 获取数据库连接
        this.conn= DButil.getConnection();
// 查询数据库中 pokecount 表中的数据并返回
        return DButil.queryList(this.conn, Goods.class, "select * from legendary order by rand () limit 5 ");
    }

    @Override
    public List<pokecount> findpokemon() throws SQLException {
        this.conn= DButil.getConnection();

        return DButil.queryList(this.conn, pokecount.class, "select * from pokecount");
    }

    @Override
    public List<shuxin> findAll() throws SQLException {
        this.conn= DButil.getConnection();

        return DButil.queryList(this.conn, shuxin.class, "select * from pokeshuxin");
    }

    @Override
    public List<Male> findsex() throws SQLException {
        this.conn= DButil.getConnection();

        return DButil.queryList(this.conn, Male.class, "select * from male");
    }

    @Override
    public List<Type> findtype() throws SQLException {
        this.conn= DButil.getConnection();

        return DButil.queryList(this.conn, Type.class, "select * from type");
    }

    @Override
    public List<Capture> findRate() throws SQLException {
        this.conn=DButil.getConnection();
        return DButil.queryList(this.conn,Capture.class,"select * from rate ORDER BY rand() LIMIT 10;");
    }

    @Override
    public List<Fication> findFaction() throws SQLException {
        this.conn=DButil.getConnection();

        return DButil.queryList(this.conn,Fication.class,"select * from faction ORDER BY rand() LIMIT 6");
    }
}
创建services包

接口代码和dao包一样
service的实现类

public class GoodsServiceImpl  implements GoodsService {
    private GoodsDAO goodsDAO=new GoodsDAOImpl();
    @Override
    public List<Goods> findattackTop5() throws SQLException {

        return goodsDAO.findattackTop5();
    }

    @Override
    public List<pokecount> findpokemon() throws SQLException {
        return  goodsDAO.findpokemon();
    }

    @Override
    public List<shuxin> findAll() throws SQLException {
        return goodsDAO.findAll();
    }

    @Override
    public List<Male> findMale() throws SQLException {
        return goodsDAO.findsex();
    }

    @Override
    public List<Type> findType() throws SQLException {
        return goodsDAO.findtype();
    }

    @Override
    public List<Capture> findRate() throws SQLException {
        return goodsDAO.findRate();
    }

    @Override
    public List<Fication> findFaction() throws SQLException {
        return goodsDAO.findFaction();
    }


}
创建Controller包

将获取的数据库数据转化成JSON数组
pom.xml中导入json包

<dependency>
  <groupId>com.alibaba</groupId>
  <artifactId>fastjson</artifactId>
  <version>1.2.37</version>
</dependency>

创建Controller类

// 使用@WebServlet注解指定Servlet的URL映射
@WebServlet("/findtop.do")
public class FandGoodsServlet extends HttpServlet {
    
    // 创建GoodsService对象并初始化
    private GoodsService goodsService = new GoodsServiceImpl();

    // 处理HTTP GET请求
    protected void service(HttpServletRequest req, HttpServletResponse resp) throws IOException {
        List<Goods> all = null;
        try {
            // 调用goodsService的findattackTop5方法来获取数据
            all = goodsService.findattackTop5();
        } catch (SQLException throwables) {
            throwables.printStackTrace();
        }
        
        // 将获取到的数据转换成JSON字符串
        String s = JSON.toJSONString(all);
        
        // 在控制台打印JSON字符串
        System.out.println("s = " + s);
        
        // 将JSON字符串写入HTTP响应
        resp.getWriter().write(s);
    }
}
Unity中Newtonsoft.Json的使用(一) 在Unity中下载Newtonsoft.Json,并进行序列化和反序列化 阅读详情

相关推荐

LLM and Embedding区别

LLM(大语言模型)和 Embedding(嵌入)是自然语言处理(NLP)中的两个核心概念,它们的核心区别在于。Embedding 计算向量。

u010674101的专栏 1875

Servlet中,WebServlet注解的使用方法

作为通配符,*在哪里,哪里就是模糊的。

wytccc的博客 407

S7-1200PLC期末复习题(第七章)

A.0 B.1 C.4 D.-4 A、CV = 0 B、CV = 1 C、CV < 4 D、CV >= 4A、0,0 B、3,0 C、1,1 D、3,1 A、0 B、1 C、先是1,再变为0 D、先是0,再变为1置位输出:常开触点M0.0闭合,Q0.0变为1状态并保存该状态,即使M0.0断开,Q0.0也保持1状态。 复位输出:常开触点M0.1闭合时,Q0.0变为0状态并保持该状态,即使M0.1断开,Q0.0也保持为0状态。 A、1 B、0 C、5 D、10RESET_BF指令需要两个参数,第一个是复位的位数

qq_52251819的博客 4420

在IDEA中无法注解WebServlet

当在程序中遇到无法注解WebServlet问题时,可能是依赖中未加入Tomcat可以右击项目模块打开OpenModuleSettings。 选择Dependencies查看是否有Tomact,若是没有手动添加 应用。

weixin_47299846的博客 1992

汇川EASY系列之以太网通讯(套接字socket做从站)

汇川EASY系列的以太网通讯中的Socket字通讯,不能使用配置的方式实现,只能通过指令完成,本文将详细说明

这是一个长期关注工控行业技术的博客,实现0-1的突破,期待您的关注和留言 3002

Android - 蓝牙开发

文章目录科普SIG类型制式编程Classic BluetoothBluetooth Low Energy蓝牙的UUID是什么?有什么用? 科普 https://zh.wikipedia.org/wiki/%E8%97%8D%E7%89%99 蓝牙(英语:Bluetooth),一种无线通讯技术标准,用来让固定与移动设备,在短距离间交换资料,以形成个人局域网(PAN)。其使用短波特高频(UHF)无线电波,经由 2.4 至 2.485 GHz 的 ISM(工业、科学、医疗)频段来进行通信。1994 年由电信商

qq_43323826的博客 1万+

WebServlet——转发

WebServlet——转发 getRequestDispatcher 获取请求转发对象,并且设置地址 forward(req,resp) 向前走 走向具体的转发地址 (注意一下 转发的话 浏览器地址没有发生改变) servletContext 域对象 servletContext.setAAttribute 全局的域对象 都可使用不必通过转发 req.setAAttribute设置的值 只能通过转发把转发对象req转发到宁一个类的时候才能获取到 HelloServlet04 package com.ygk

qq_45020745的博客 151

FPGA和USB3.0通信-USB3.0 PHY介绍

可以和FPGA搭配使用的USB3.0 PHY芯片通过之前的介绍<FPGA和USB3.0通信-USB3.0协议介绍USB3.0 PHY简介首先我们需要了解PHY具体完成哪些工作以及我利...

OpenFPGA的博客 4940

关于WebServlet注解使用报错的解决办法

WebServlet注解的使用规范,开发过程中掌握的知识

wzc200406的博客 1137

2023,程序员的出路在哪里?

可是似乎从30岁开始这工资就没涨过,前面跳槽几次涨的薪水在30岁以后跳槽已经不管用了、定格了,这几年由于市场环境不景气,程序员竞争越来越激烈,36岁跟30拿的工资一模一样,不仅工资拿的一样,反而事情还越来越多了,这些都意味着什么?处理故障需要的通常不仅仅是写代码的能力,还需要对一个系统的全貌要有一定的掌握。虽然目前不少大型互联网企业都在进行结构性调整,但是从互联网行业发展的基本面来看,未来在产业互联网发展的过程中,IT行业和传统行业将会释放出大量的就业岗位,所以未来程序员的发展空间还是非常值得期待的。

AI天才研究院 20万+

六、Tool 工具系统:让大模型拥有“手脚“

我问你一个问题:大模型能不能告诉你"北京今天天气怎么样"?能——它能用非常流畅的中文回答你不能——它不知道这个答案因为它没有联网能力,也没有实时数据。它可能会自信地编一个"今天晴,25 度"给你——这就是幻觉。问题出在哪?大模型是一个"推理引擎",不是一个"执行引擎"。它知道天气 API 怎么调用,但不能真的发出 HTTP 请求。它知道 Python 代码怎么写,但不能真的运行代码。它知道数学公式,但做不了精确的大数计算。Tool 工具系统解决的,就是这个"最后一公里"问题。

牛肉胡辣汤 159

jsp项目路径正确但是404,WebServlet路径注解失效

javaweb项目,由于WebServlet路径注解失效,导致路径正确,但是浏览器报404错误。

weixin_46333911的博客 1245

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

idea2020创建WebServlet

idea2020创建WebServlet 工具:idea2020、已创建好的Javaweb项目(创建详情) 1、创建Select 1.1 使用框架快速创建 1.2 在web.xml中添加配置信息 说明 END

qq_44938451的博客 343

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

webservlet注解无效访问servlet接口时报404

通过逐步定位日志错误、分析类加载冲突和配置规则,最终通过路径修正、依赖升级和配置统一解决了所有问题。后续开发中需注意 Tomcat 版本特性和规范变更,避免类似问题重复发生。此页面提供获取 Tomcat 10.1.x 软件最新版本的下载链接,以及指向旧版本存档的链接。这几乎肯定需要更改代码,以使应用程序能够从 Tomcat 9 及更早版本迁移到 Tomcat 10 及更高版本。-- 新依赖(正确,Tomcat 10对应Jakarta 5.0) -->-- 旧依赖(错误) -->-- 删除以下内容 -->

2203_76053163的博客 1622

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

Servlet的WebServlet注解详解

1. 如何实现Servlet,代码如下 package com.xxxx.servlet; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResp

WuNJIT的博客 1142

idea 新建servlet 访问提示404 WebServlet注解找不到包 报错

检查访问路径是否设置正确如果设置为name = “/testServlet”,则会404。

道友 2391

如果你还是被Servlet包和Webservlet注解爆红给支配

关于IDEA提示Servlet和jsp包并且同时Webservlet系列注解提示错误 如果你已经搜索了大量解决方案,并且尝试过 配置Tomcat环境 在project Structures中配置Modules的Denpendencies 各种方式导入jar包 怀疑tomcat出问题重新导入 检查过lombok已经安装了 如果以上的几种操作你如果都已经尝试过或者了解过了,然后IDEA仍然在import javax.servlet(就在javax后找servlet都找不到)还是出错,那么你可以试一下敲一

qq_44010189的博客 1676

Myeclipse中WebServlet cannot be resolved to a type报错

Myeclipse中WebServlet cannot be resolved to a type报错 今天在写Servlet时使用注解配置Servlet出现 WebServlet cannot be resolved to a type 的错误,然后一直找问题都没有找到,网上找了半天也没有找到,然后使用eclipse写了个servlet时对比了下发现就是少引入了 import javax...

weixin_33701294的博客 7048

WebServlet注解的基本使用

【代码】WebServlet注解的基本使用。

2401_82973450的博客 374

webservlet工作流程自用笔记总结

流程上应该是网页上做了什么操作传输给控制器层,比如点击了什么,输入了什么,然后控制器层将前端抛来的数据进行分析,将其抛给service层,service层通过dao层与数据库连接池进行比对,将数据进行处理后,再通过dao层对数据进行写入,最后返回控制器层转为JSON格式传给前端。

qq_73033308的博客 140

SpringBoot集成WebServlet出现自定义单servlet请求失败的问题

一.导言 SpringBoot的真正核心是快速整合以及自动装配,所以在spring家族中springBoot不仅整合了Spring的IOC容器还兼容了WebServlet容器;这使得springBoot项目不仅支持快速开发微服务,同时具备开发MVC模式下的项目。 其中MVC模式的实现者之一就是WebServlet;由于springBoot的整合,在其项目中开发WebServlet也是可行方案之...

weixin_35483528的博客 232

在编写servlet时候import javax.servlet.annotation.WebServlet;问题

在编写servlet时候import javax.servlet.annotation.WebServlet;问题

杨鑫newlife的专栏 1万+

Cannot resolve symbol ‘WebServlet‘

java项目报错 Cannot resolve symbol 'WebServlet' 导入包 import javax.servlet.annotation.WebServlet; 引入Java EE 下载 完成

数据飓风 5837

Servlet容器来扫描指定包中的类 找到带有WebServlet注解的类

WebServlet注解。myweb下边三个类。

2403_87729201的博客 575

servlet 3.0 webservlet访问

一开始添加了注解webservlet一直不能访问,后来经过大师提醒, 需要修改web.xml的web-app属性如下, [code="xml"][/code]

smilecrab的专栏 187

WebServlet使用方法

在servlet3.0以后,我们可以不用再web.xml里面配置servlet,只需要加上@WebServlet注解就可以修改该servlet的属性了。 ** 1.Form表单连WebServlet** Servlet部分: package WebTest1; import java.io.IOException; import javax.servlet.ServletException; i...

AnLikuangmo的博客 2132
上一篇: 初始化hive报错: Failed to get schema version. Underlying cause: com.mysql.jdbc.exceptions.jdbc4.Communica
下一篇: GET和POST的区别
Jamtinx
博客等级 码龄5年 427粉丝 13原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值