`

写的一个小应用总结

 
阅读更多

 

前几天帮一个朋友写了个简单的彩票系统,因为只是一个很简单的应用,所以在技术选型的时候,尽量选用的简单,容易上手的,没有采用很重的框架!写完后给自己简单做个笔记

 

技术选型:jsp + servlet + javabean + jdbc + mysql + tomcat 构建采用maven,因为这个太简单了,搭建起来,跟ant比。不用写一大堆得东西!

 

mvnc model 1 模型,看到这些东西就知道是很早起的软件主流技术了,但是现在写起来还是存在很多问题,太久没折腾这些东西了!都是些基础性的东西

 

问题1:jsp中如何使用 jstl标签

 

step1) 需要下载jstl包 早maven得pom.xml中添加:

<dependency> <groupId>jstl</groupId> <artifactId>jstl</artifactId> <version>1.2</version> </dependency>


 

step2) 将这个包中的 c.tld 放到 src/main/webapp/WEB-INF/下 (因为我只用到了 c标签)。其他的只需要将所有的放下这个目录下即可!

 

step3) jsp页面中 添加:

 

<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ page isELIgnored="false"%>

//具体使用 
<c:forEach items="${allLotteryResult}" var="item" varStatus="status">
			<tr>
				<td>${status.index+1}</td>
				<td>${item.loName}</td>
				<td>${item.fullName}</td>
			</tr>
</c:forEach>
 

 

allLotteryResult : request.setAttribute("allLotteryResult",allLotteryResult);

item:具体的使用对象变量

status:整个对象,较为常用的就是这个 index表示下标值

 

step4) 有一点可能会出现的问题: 在web.xml中 需要将你得头制定到你下载的servlet包 

<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">

版本需要对,例如这里的 2_5 

2.servlet中得两种跳转方式

 

内部跳转;

RequestDispatcher view = req.getRequestDispatcher(url);

        view.forward(req, resp);

 

s1 这个过程其实经历了两次跳转

s2 只能在内部进行跳转

s3 可以将跳转过程中设置的参数带到页面

 

外部重定向:

resp.sendRedirect(url);

 

不会将请求中设置的参数带过去,要像带参数的话 只能通过 ?xx=xx&bb=bb的方式

可以请求外部地址,这个url可以是 www.baidu.com等

 

 

3.web.xml中如何配置 servlet 

 

<servlet>
		<servlet-name>levelManager</servlet-name>
		<servlet-class>com.sample.web.level.LevelManager</servlet-class>
	</servlet>
	<servlet-mapping>
		<servlet-name>levelManager</servlet-name>
		<url-pattern>/level/levelManager.do</url-pattern>
	</servlet-mapping>
 

在做的时候悲剧的发现 自己连.do这种设置方式都忘记了。可能在用公司框架的东西用傻了!

 

 

4.service层采用的是领域建模中提倡的那种 BO+service(服务)的方式来处理业务逻辑。其实本身也没什么特别复杂的业务逻辑,基本就是CURD操作

 

5.DAO这层,封转了一个DAOTEMPLATE + JDBCUtil,将一些公用的CURD进行了处理。不过在写的时候没有特别的注意抽取出接口,偷懒了!

用JDBC操作数据库就下面几个核心步骤,刚入行的时看得还是挺难得,现在来看,只是使用API的方式还是很简单的东西

 

 

url        = "jdbc:mysql://localhost/lottery?useUnicode=true&characterEncoding=GBK&jdbcCompliantTruncation=false";
username   = "lottery";
password   = "123456";
driverName = "com.mysql.jdbc.Driver";
 

 

1.注册数据库驱动

Class.forName(driverName);

 

2.建立连接 

DriverManager.getConnection(url, username, password);

 

3.准备SQL数据:

4.执行并处理返回结果

5.关闭连接

 

Connection   连接

PreparedStatement 操作SQL对象 

ResultSet 结果集合

 

需要注意的是 设置参数是从1开始的 :

 

 

   Connection conn = null;

 

 

 

        PreparedStatement ps = null;
        ResultSet rs = null;
        try {
            conn = jdbcUtil.getConnection();
            ps = conn.prepareStatement(sql);
            for (int i = 0; i < args.length; i++) {
                ps.setObject(i + 1, args[i]);
            }
            rs = ps.executeQuery();
            Object obj = null;
            while (rs.next()) {
                obj = rowMapper.rowMapping(rs);
            }
            return obj;
        } finally {
            jdbcUtil.close(rs, ps, conn);
        }   

 

 

 

             

 

 

 

 

分享到:
评论

相关推荐

    将Django当成一个微架构并在一个单独的文件中写小应用的轻量级封装

    总结,将Django当作微架构,意味着我们可以将复杂的大项目分解为多个独立、可维护的小应用,每个应用都在一个单独的文件中进行轻量级封装。这种做法不仅提高了代码的可读性和可维护性,还促进了模块化的开发方式,...

    spring应用开发总结

    spring适用于扩展的详细笔记,针对《spring 3.x 企业应用开发实战》写的 详细总结,涵盖自己的心得体会

    应用数理统计,写一个小论文用到数理统计的知识,也就是说数理统计的应用 这里是关于分析某车站在某时段到达的人数

    一、数理统计在交通问题中的应用 数理统计可以应用于解决交通问题,例如分析天津某车站的人数分布,以确定其是否服从 Possion 分布。通过这种分析,我们可以更好地了解交通系统的规律,从而更好地规划和管理交通...

    C#写的一个小闹钟

    总结,创建一个"C#写的小闹钟"项目涉及C#的UI设计、事件驱动编程、多线程处理、系统通知、数据持久化等多个知识点。通过这个项目,开发者不仅可以提升C#编程技巧,还能加深对Windows应用程序开发的理解。无论是初学...

    创建第一个MFC应用程序

    **创建第一个MFC应用程序** Microsoft Foundation Class (MFC) 是微软提供的一套C++类库,它基于Windows API,使得开发者能够更容易地构建Windows应用程序。本教程将详细讲解如何使用Visual Studio来创建你的第一个...

    在任务栏显示键盘的大小写

    总结起来,这个工具解决了笔记本用户在没有物理Caps Lock指示灯时的困扰,提供了一个直观的方式来监控键盘的大小写状态,提高了输入效率和准确性。对于经常需要在不同设备间切换工作的用户,尤其是程序员、文案工作...

    vue写h5页面的方法总结

    该方案基于一个基本的公式:根据屏幕大小除以750来动态计算html的font-size,从而保证字体大小能够根据不同的屏幕尺寸作出自适应变化。实际上,还可以根据设备的像素比设置scale的值,使视口device-width保持等于...

    数据库区分大小写的设置

    例如,在SQL Server中创建或修改一个列时,可以指定一个区分大小写的排序规则,如下所示: ```sql ALTER TABLE users ALTER COLUMN PASSWORD nvarchar(50) COLLATE Chinese_PRC_CS_AS ``` 在这段代码中,`Chinese_...

    学校生学习总结范文_学校生学习总结怎么写.docx

    学校生学习总结范文_学校生学习总结怎么写.docx

    xml读写项目总结

    本项目是对XML文件读写操作的综合总结,旨在提供一个实用的XML处理工具集。 首先,我们要关注的是“封装好的XML文件的读和写工程”。在编程中,通常我们会创建类或函数库来简化XML文件的操作。读取XML文件时,我们...

    26个英文字母大小写打印版.pdf

    根据文件内容的描述,可以推测该文档可能并不是一个长篇幅的文章或者报告,而更有可能是一份包含26个英文字母及其大小写形式的清单。此外,内容中提到了OCR扫描技术,这意味着该PDF文档可能是从纸质文件或图片转换而...

    数据库大型应用解决方案总结

    客户端看到的是一个高性能的虚拟服务器,而实际服务由多个节点协作完成。 1. **实现原理** 负载均衡通常通过中间层实现,该中间层拦截应用程序与数据库之间的直接通信,根据策略决定将请求路由到哪个数据库。这...

    应用文写作总结 应用文写作学习总结.doc

    应用文的另一个特点是主旨单一、集中、明确。在撰写时,作者需要清晰地表达出意图,避免过多的修辞和冗余信息,以确保信息传递的有效性和准确性。此外,应用文的语言要求准确、简明、平易和庄重,避免使用模糊不清或...

    ios-模仿QQ布局写的一个小项目,以及腾讯广告SDK的应用.zip

    标题中的“ios-模仿QQ布局写的一个小项目,以及腾讯广告SDK的应用”表明这是一个iOS开发的项目,其中包含了对QQ布局的模仿实现以及腾讯广告SDK的集成应用。在这个项目中,开发者可能旨在学习和实践iOS界面设计,尤其...

    用Qt4写的将mini2440应用程序结合在一起的一个程序

    标题中的“用Qt4写的将mini2440应用程序结合在一起的一个程序”表明这是一个使用Qt4框架开发的应用,目标平台是mini2440。Qt4是一个流行的、跨平台的C++图形用户界面库,广泛用于创建桌面和移动应用程序。而mini2440...

    基于C#窗体应用的抽奖小程序

    总结来说,这个基于C#窗体应用的抽奖小程序是一个结合了C#编程、窗体设计、随机数生成和条件控制的实践案例。它的实现不仅涉及基础的编程技巧,还展示了如何在实际场景中应用这些技术,满足特定需求。对于学习C#和...

    OpenCV应用总结

    "OpenCV应用总结" OpenCV 是一个开源的计算机视觉库,由 Intel 公司开发,现已被 Willow Garage 维护。它提供了大量的图像处理和计算机视觉功能,可以应用于图像和视频处理、机器学习、对象识别、人脸识别、图像...

    青鸟S2全部手写总结 SQL进阶篇总结

    此外,子查询(Subquery)也是进阶查询的重要部分,它可以在一个查询中嵌套另一个查询,实现对数据的更灵活筛选。 在DDL方面,理解如何创建、修改和删除数据库表结构是关键。这包括定义字段类型、长度、是否允许为...

    一个MFC写的,只有三行代码的小游戏

    总结起来,这个小游戏虽然代码量少,但它巧妙地利用了MFC的类库来快速构建应用程序,并通过`ShellExecute()`函数与Windows系统进行深度交互。这样的设计展示了高级框架如何简化编程任务,同时也体现了Windows API的...

    HOWTOWRITEASUMMARY怎样写一个英语总结PPT教案.pptx

    1. **理解总结的本质**:总结是对原文的一个缩短版,只包含文章的核心要点。它必须用你自己的话来表述,而不是直接复制原文的句子。 2. **注意要点**:撰写好的总结需要注意以下几点: - **避免直接引用**:应尽量...

Global site tag (gtag.js) - Google Analytics