Java服务器接口快速开发之Servlet详细教程
7月14日晚间消息,据乐视网刚刚披露的业绩预告,公司预计2017年上半年亏损6.37亿至6.42亿元,上年同期盈利2.84亿元。报告期内,乐视网资产减值损失计提规模较大约为2.3亿元,其中无形资产版权减值准备1.30亿元、存货跌价准备0.02亿元、应收账款坏账准备0.98亿元,非经常性损益预计约为人民币950万元。
最近高温来袭,大家记得上班要注意补水,千万不要中暑。新的一周大家一起好好努力吧!
长久以来,本公众号一直都是分享的Android客户端开发的知识,但是也有一些朋友问过我服务器程序应该怎么写?本篇来自 向大牛前行 的投稿, 向大家分享了Java服务器接口快速开发之servlet详细教程,算是一个简单的服务器入门教程,希望大家喜欢。
向大牛前行 的博客地址:
http://my.csdn.net/qq_35522272
开发工具和环境
由于我们的接口开发语言是 java,那么当然还是以 eclipse 为主。这里我使用的是带有 web 插件的 eclipse。我们俗称 javaEE。(当然很多人会使用 myeclipse 这也不错)
想要搭建服务器,tomcat 当然必不可少。这里使用的是7.0,而且是以插件的形式存在于eclipse 中。
做服务器开发的同学当然知道数据库也是必不可少的,咱不能做一个没有真实数据的接口。数据库用的 mysql。
这些工具网上都是可以百度进行下载的。这里不赘述了。
数据库创建以及java中jdbc驱动加载数据库
不熟悉数据库的小伙伴可以下载一个可视化的数据库操作界面。比如 sqlGUI、navicat for mysql 等等都是不错的操作界面,也很简单。我们可以通过这些可视化工具来建表,增加数据等等。当然有些同学可能数据库语句很熟悉了,可以通过 shell 指令来操作。
以 mac 为例:安装好 mysql 后可点击系统偏好设置能看到mysql服务,如图:
然后点击图标可以看到服务是否启动,没有启动就点击启动就可以了。如图这个是启动了:
接下来打开终端:首先输入 mysql 所在目录
PATH=”$PATH”:/usr/local/mysql/bin
回车后输入如下:
mysql -u root -p
,回车会提示输入密码。输入密码后回车就成功链接 mysql 服务了。如图:
这时候我们可以创建数据库,创建表格等等。
接下来就是我们重点的接口工程的创建了
我们打开下载好的带插件的 javaEE 右击创建动态 web 项目。新建好的目录工程如图:
我们需要关心的目录主要在src 目录,里面存放正常的java代码。然后是 WebContent 目录下的 Web—INF 目录。这里我们看到已经存在 lib 目录了,其实就是存放第三方jar包的。我们还需要手动创建 config 文件夹,其中创建一个 config.properties 文件用于存放链接数据库驱动的配置文件。具体的内容如下:
这里就是加载 mysqljdbc 驱动的关键代码,其中数据库名称,用户名密码等都必须正确不然是无法连接的。如图:
当然我们还得知道 webContent 目录下可以存放我们 web 工程的 html、jsp、js、css 等页面。
接下来有个重点的关于 servlet 接口的配置文件,结构如图:
其中具体配置如下:
代码中注释已经很详细了。其实接口的名称就是别名挂钩的,所以一定要注意。当然很多小伙伴可能不明包 listener 配置。接下来会详细解释。
配置代码结构如图:
DBUtil 代码:
ListenerLoadConfig 代码如下:
LoadDBconfig 代码如下:
代码就不详细解释了。其实 ListenerLoadConfig 这里就在刚才的 web。xml 中用到了。这个就是入口,因为其实现了 ServletContextListener 这个接口那么程序启动的时候就会从这开始。而这里面做的也就是读取配置文件的路径然后通过 LoadDBconfig 来加载驱动。然后通过 DBUtil 来创建链接。
接下来就是接口介绍了。
我们之前已经说到了,我们接口使用的servlet技术,servlet 技术其实是 java 接口的最核心的技术,spring 框架其实也就是对 servlet 的封装。
首先我们需要继承自 servlet,代码如下:
继承自 HttpServlet 之后会自动实现 get 和 post 方法。这就是我们常说的 http 请求中的方法。客户端做网络请求就会到这两个方法中。我们可以看到有两个参数 HttpServletRequest,和 HttpServletResponse。这两个就分别对应http请求中的请求参数,和返回接口,也就是客户端请求的参数都在 HttpServletRequest 中我们可以拿到,而服务器返回的接口都可以存放在 HttpServletResponse,中这样客户端就能拿到想要的数据了。是不是觉得很简单。那么接下来我们来一个简单的例子。
注册接口的demo测试:
代码如下:
数据库 RegistDao 代码:
需要实战练习的同学可以看我的 github:
https://github.com/MrHangVIP
上面有详细的项目源码。 后台项目地址:
https://github.com/MrHangVIP/ZSXBiSHe
这个是配合后台的对应客户端源码,客户端是安卓的项目。项目地址:
https://github.com/MrHangVIP/AiYaMaYa
当然,如果觉得写得好的话可以star谢谢!
每天学习累了,看些搞笑的段子放松一下吧。关注最具娱乐精神的公众号,每天都有好心情。
如果你有好的技术文章想和大家分享,欢迎向我的公众号投稿,投稿具体细节请在公众号主页点击“投稿”菜单查看。
欢迎长按下图 -> 识别图中二维码或者扫一扫关注我的公众号:
Java服务器接口快速开发之Servlet详细教程相关推荐
- 转wap开发之wml详细教程
转一篇很好的wap开发教程,写的很详细,还有实例 转自:[url]http://blog.csdn.net/hallywang/archive/2007/07/30/1717008.aspx[/url ...
- Android快速开发之appBase——(4).详解com.snicesoft.Application和BaseActivity
转载请注明本文出自JFlex的博客http://blog.csdn.net/jflex/article/details/46441571,请尊重他人的辛勤劳动成果,谢谢! Android快速开发之ap ...
- Android快速开发之appBase——(5).BasePresenter的使用
转载请注明本文出自JFlex的博客http://blog.csdn.net/jflex/article/details/46456621,请尊重他人的辛勤劳动成果,谢谢! Android快速开发之ap ...
- android idata 模式,Android快速开发之appBase——(3).详解IHolder和IData
Android快速开发之appBase--(3).详解IHolder和IData IHolder和IData是AVLib的两个组件,在前面已经使用过了,那么这一篇将会详细说明这两个组件的用法. IHo ...
- Android快速开发之appBase——(6).HttpReq和APICloudSDK
转载请注明本文出自JFlex的博客http://blog.csdn.net/jflex/article/details/46462077,请尊重他人的辛勤劳动成果,谢谢! Android快速开发之ap ...
- php调用美图接口,网易美图 API 接口调用与请求方法详细教程
原标题:网易美图 API 接口调用与请求方法详细教程 网易美图 API 接口在网上已经很多且大都封装成了 API 供别人调用.支持前台跨域请求,以POST方式提交图片即可.网易美图 API 接口会随机 ...
- 从购买服务器到搭建WordPress博客详细教程
我的博客原文链接:从购买服务器到搭建WordPress博客详细教程 - Hoyerの小站 〇. 引言 你是否想过搭建一个自己的网站?是否想过随心所欲地设计网站的界面风格?是否想过用自己建的网站赚钱?这 ...
- php服务器能运行java吗_将PHP与Java服务器接口
我有一个游戏服务器应用程序(Java),并希望PHP与之直接通信. 例如,发送命令(从PHP)返回用户列表. 从游戏服务器等踢出特定玩家 如何将Java与PHP交互? 我已经想到了几件事,其中任何一项 ...
- Java微信公众平台开发之OAuth2.0网页授权
根据官方文档点击查看在微信公众号请求用户网页授权之前,开发者需要先到公众平台官网中的"开发 - 接口权限 - 网页服务 - 网页帐号 - 网页授权获取用户基本信息"的配置选项中,修 ...
最新文章
- 电子与通信工程专硕考分_2021西安电子科技大学电子与通信工程考研经验分享...
- redis 入门教程
- 二,zabbix与php的一些问题
- python列表获取最后一个元素的方法_Python3基础 pop 取出列表的最后一个元素
- 白居易--《祭李侍郎文》
- iOS开发常用输入校验
- SQL2008学习小结
- 算法导论 - 函数的增长。
- mysql判断范围0到10 11到20_SQL 如何查询日期在一定范围内的数据
- ehcache 在web项目中使用
- Vmware使用net模式共享虚拟机linux IP
- 软件需求分析——需求工程导论
- visio一分二的箭头_visio双箭头怎么画? visio2013绘制双箭头直线的教程
- 达尔优EM915镜面板游戏鼠标拆机教程
- 计算机编程的11种趋势:
- 测试如何快速了解一个产品、需求、任务(海盗派测试分析,KYM)
- Python 通过URL打开图片
- STM32+ws2812灯条,点灯升级版
- ArcGIS支持实时地理信息系统
- 问卷调查+需求分析(部分)
热门文章
- python编译器acanda_用python做生信分析
- 微信小程序组件——bindtap和catchtap的区别
- 微信小程序项目实例——2048小游戏
- 在linux系统下如何编译运行C语言程序和C++程序
- vue java 实战_vue项目实战总结篇
- Oracle 给用户增加权限
- windows7查看mysql是否启动_mysql5.7在windows不能启动的方法及查看数据库大小命令...
- Duplicate keys detected: '0'原因及解决方法
- 元宇宙的基础【Metaverse】
- 鹤岗市全国计算机等级考试,2016下半年鹤岗计算机二级报名系统入口