利用Spring实现Hello World
因为最近要做Java Web方面的开发,所以,就像使用Spring来实现一个以前学其他程序时首先做的一个示例"Hello World!"练练手,之前用很多中语言实现过hello world当然也包括Java,但是没想到用Spring框架来实现输出一个Hello World还是遇到了一点麻烦,并且从网上查找的很多的资料也并不奏效,并且网上的很多资料写的也并不够详细,所以,在这里把自己用Spring实现Hello World的程序分享出来。
首先,更正一下之前的文章关于Eclipse下Spring框架安装的问题,利用之前的文章中说的直接安装插件,安装的大多是为了实现Spring IDE,也就是在Eclipse下更好的实现SPring开发的一些工具,而真正的包含的SPring框架并不全,缺少很多Jar包,所以在这里和大家分享一下我找到的一个Spring框架下载的地址,因为之前的据说都是直接用jar包就可以了,但是现在因为Spring官网改版,很难找到SpringFramework直接用Jar包的版本了,所以这里把我自己找到的资源帖出来希望可以对大家有帮助:http://repo.springsource.org/libs-release-local/org/springframework/spring/
从该站点就可以下载到一直到4.0版本的Spring Framework,下载之后会看到lib文件夹下有很多的jar包,这些jar包在使用的使用直接导入的项目里就可以了。
接下来就简单的介绍一下如何利用SPring Mvc实现一个Hello World的程序。
1.建立一个Dynamic Web Project取名为helloweb
2.在新建的项目的Java Resources文件夹下存在着一个名为src的文件夹,在其下建立一个包,包的名字可以自己来取,这里命名为com.tutorialspoint,在建立该包之后,可以在其下添加一个类,作为控制器,这里取名为HelloController.java,在其中添加代码即可
@Controller是说这个文件中的类是一个控制器,@RequestMapping("/")则是说明你输入的哪些路径会被映射到该控制器,这里的话是说在localhost:8080/helloweb/的情况下,控制器会被选择处理该请求。而该控制器最后的return语句中返回的是hello则说明返回的响应会去找一个带有hello的前端视图比如是hello.jsp.
3.在项目下的WebContent文件夹下的WEB-INF文件夹下加入一个jsp文件夹并在其中添加一个前端视图文件hello.jsp代码如下
4. 将需要用到的jar包复制到WebContent->WEB-INF->lib下,具体我用的jar包包括以下这些
5. 在WebContent->WEB-INF文件夹下建立web.xml文件
6.在WebContent->WEB-INF文件夹下建立HelloWeb-servlet.xml文件
7.将修改过的所有文件都保存,然后在项目文件夹上右键找到Export选项,选择以War的形式导出,将其导出到Tomcat安装路径下的webapps下即可,
8.启动tomcat,然后随意打开一个浏览器在地址栏中输入localhost:8080/helloweb/如果不意外的话
出现上面的界面就说明你的第一个利用Spring框架的Hello World程序就搞定了.
利用Spring实现Hello World的更多相关文章
- 利用spring boot创建java app
利用spring boot创建java app 背景 在使用spring框架开发的过程中,随着功能以及业务逻辑的日益复杂,应用伴随着大量的XML配置和复杂的bean依赖关系,特别是在使用mvc的时候各 ...
- 利用spring AOP 和注解实现方法中查cache-我们到底能走多远系列(46)
主题:这份代码是开发中常见的代码,查询数据库某个主表的数据,为了提高性能,做一次缓存,每次调用时先拿缓存数据,有则直接返回,没有才向数据库查数据,降低数据库压力. public Merchant lo ...
- java 利用spring JavaMailSenderImpl发送邮件,支持普通文本、附件、html、velocity模板
java 利用spring JavaMailSenderImpl发送邮件,支持普通文本.附件.html.velocity模板 博客分类: Java Spring 本文主要介绍利用JavaMailS ...
- 利用spring自己实现观察者模式
利用spring,自己实现的一个观察者模式,写着玩玩,目的是为了加深理解,下次用Spring自带的玩一玩. 首先我们定义一个侦听类接口 package com.hyenas.common.listen ...
- 利用Spring.Net技术打造可切换的分布式缓存读写类
利用Spring.Net技术打造可切换的Memcached分布式缓存读写类 Memcached是一个高性能的分布式内存对象缓存系统,因为工作在内存,读写速率比数据库高的不是一般的多,和Radis一样具 ...
- 利用Spring AOP自定义注解解决日志和签名校验
转载:http://www.cnblogs.com/shipengzhi/articles/2716004.html 一.需解决的问题 部分API有签名参数(signature),Passport首先 ...
- 利用spring,实现package下的类扫描
项目中需要用到包扫描的情况是很多的,一般是在项目初始化的时候,根据一些条件来对某个package下的类进行特殊处理.现在想实现的功能是,在一个filter或interceptor初始化的时候,扫描指定 ...
- 利用spring的MultipartFile实现文件上传【原】
利用spring的MultipartFile实现文件上传 主要依赖jar包 spring-web-3.0.6.RELEASE.jar 用到 (org.springframework.web.multi ...
- 利用Spring的junit4测试
利用Spring的JUnit4进行测试 不需要再显式创建Spring容器和getBean @RunWith(SpringJUnit4ClassRunner.class) @ContextConfigu ...
- 利用Spring Cloud实现微服务- 熔断机制
1. 熔断机制介绍 在介绍熔断机制之前,我们需要了解微服务的雪崩效应.在微服务架构中,微服务是完成一个单一的业务功能,这样做的好处是可以做到解耦,每个微服务可以独立演进.但是,一个应用可能会有多个微服 ...
随机推荐
- 解决GitHub push项目——Push failed: Unable to access 'https://********.git/': Failed to connect to 127.0.0.1 port 1080: Connection refused
解决方法: 第一步:在git中设置http代理 git config --global http.proxy 第二步:在git中取消http代理 git config --global --unset ...
- vue.js(18)--父组件向子组件传值
子组件是不能直接使用父组件中数据的,需要进行属性绑定(v-bind:自定义属性名=“msg”),绑定后需要在子组件中使用props[‘自定义属性名’]数组来定义父组件的自定义名称. props数组中的 ...
- FreeSWITCH Explained / Configuration / Proxy Media
FreeSWITCH has 3 media handling modes: Default: media flows through FS, full processing options - RT ...
- Nginx安装与配置-Centos7
Nginx是一款高性能免费开源网页服务器,也可用于反向代理和负载均衡服务器.该软件由伊戈尔·赛索耶夫于2004年发布,2019年3月11日,Nginx被F5 Networks以6.7亿美元收购.201 ...
- RABBITMQ 协议 AMQP协议
https://baike.baidu.com/item/rabbitmq/9372144?fr=aladdin https://github.com/CopernicaMarketingSoftwa ...
- thinkphp model
模型样板 <?php namespace app\model; use think\Db; use think\Model; class Admin extends Model { //表名 p ...
- windows2008R2-AD域控组策略设置与其它相关设置
防火墙设置 修改>计算机配置>策略>安全设置>高级安全windows防火墙>高级安全windows防火墙 修改入站规则 1.组名-文件和打印机共享(SMB-In)> ...
- OSI参考模型与TCP/IP参考模型与TCP/IP协议栈
原创转载请注明出处:https://www.cnblogs.com/agilestyle/p/11484126.html OSI参考模型与TCP/IP参考模型与TCP/IP协议栈 TCP/IP分层模型 ...
- SQL Server查询使用键查找时锁申请及释放顺序
当然看的过程中,其实自己有个疑问: 对于键查找这类查询,会申请哪些锁,锁申请和释放的顺序是怎样的? 准备 备注:测试表仍然使用高兄文中创建的测试表testklup 在开始之前,使用dbcc ind 命 ...
- [转]Html.DropDownList()的用法 ( Asp.Net MVC)
Html.DropDownList()赋默认值: 页面代码如下: <% List<SelectListItem> list = new List<SelectListItem& ...