`
pzh244658240
  • 浏览: 11994 次
  • 性别: Icon_minigender_1
  • 来自: 江西
社区版块
存档分类
最新评论

MVC模式分析讲解与Type safety: Unchecked cast from Object to ArrayList<Reply>相关编译错误处理

阅读更多

     总结一下今天写的代码,总觉得有一些需要拿来总结的,这些天一直困扰我的的MVC模式终于被我攻克了,自己写了一个比较容易理解的测试代码、

#################################################################

这是模型层

public static Collection<Team> allTeams() throws Exception {
		
		ArrayList<Team> teams = new ArrayList<Team>();//创建集合对象
		
		//从数据库获取数据
		Connection cn = DataSource.getConnection();
		Statement stmt = cn.createStatement();
		ResultSet rs = stmt.executeQuery("select * from team");
		
		while(rs.next()) {
			Team team = new Team();//创建team对象
			//用数据库取得的数据设置team对象的属性
			team.setId(rs.getInt("id"));
			team.setName(rs.getString("name"));
			team.setSlogan(rs.getString("slogan"));
			team.setLeader(rs.getString("leader"));
			
			teams.add(team);//把team对象放到集合teams中
		}

		return teams;
	}

 

 

这是控制层

protected void doGet(HttpServletRequest request,
			HttpServletResponse response) throws ServletException, IOException {
		try {
			Collection<Team> teams = TeamBusiness.allTeams();

			request.setAttribute("teams", teams);

			RequestDispatcher rd = request
					.getRequestDispatcher("../viewTeams.jsp");
			rd.forward(request, response);

		} catch (Exception e) {
			e.printStackTrace();

			RequestDispatcher rd = request
					.getRequestDispatcher("../viewTeamsFail.jsp");
			rd.forward(request, response);
		}
	}

 

这是视图层

<table border="1" align="center">
<tr><th>组名</th><th>口号</th><th>组长</th></tr>
<%
Collection<Team> teams = (Collection<Team>)request.getAttribute("teams");//这个地方对报警告
Iterator<Team> it = teams.iterator();
while(it.hasNext()) {
	Team team = it.next();
%>
<tr>
<td><%=team.getName()%></td>
<td><%=team.getSlogan()%></td>
<td><%=team.getLeader()%></td>
</tr>
<%
}
%>
</table>

 

学过一点MVC模式的人都基本上能够很容易的看懂这几段代码,我们通过链接的访问servlet,servlet会通过doget的方式获取信息。然后定向到所要显示的页面。自己画了一张图容易理解。

 

 

 



  

最后想要解决相关- Type safety: Unchecked cast from Object to   ArrayList<Reply>的问题,自己做的项目报错,还以为是这个原因,最后证明与这个毫无关系,这只是简单的警告而已,意思是当Object类型转换为ArrayList类型会有危险。至于什么危险我也不知道。一下提供几点解决方案,只是让自己写的代码少一些警告而已,自己感觉没那个必要

第一:添加@SuppressWarnings("unchecked")  

第二:myeclipse的Window->Preferences->Java->Compiler->Errors/Warning->Generic types中Unchecked generic type operation设置为Ignore。

第三:myeclipse的Window->Preferences->Java->Compiler将Compiler compliance level 设置为小于1.5。

 

为什么javaeye没有微软雅黑这个字体,

  • 大小: 68.9 KB
0
0
分享到:
评论

相关推荐

    java网络对战的国际象棋源码

    &lt;br&gt;&lt;br&gt;一、用ant编译源码(所有源文件及目录结构请下载)&lt;br&gt;&lt;br&gt;C:\cs&gt;ant compile&lt;br&gt;Buildfile: build.xml&lt;br&gt;&lt;br&gt;compile:&lt;br&gt;[mkdir] Created dir: C:\cs\build&lt;br&gt;[javac] Compiling 60 source files to C:\cs...

    java jsonto对象互转

    public static &lt;T&gt; T jsonToObject(String jsonString, Class&lt;T&gt; pojoCalss) { Object pojo; JSONObject jsonObject = JSONObject.fromObject(jsonString); pojo = JSONObject.toBean(jsonObject, pojoCalss); ...

    AIC的Java课程1-6章

    第3版 机械工业出版社&lt;br&gt; 教学内容和要求&lt;br&gt;知识点 重要程度 使用频度 难度&lt;br&gt;Java 入门 高 中 易&lt;br&gt;变量和运算符 高 高 中&lt;br&gt;控制结构...br&gt;IO和串行化 高 中 难&lt;br&gt;知识点 重要程度 使用频度 难度&lt;br&gt;&lt;br&gt;第1章...

    对DAO编写单元测试源代码

    &lt;br&gt; }&lt;br&gt;&lt;br&gt; @SuppressWarnings("unchecked")&lt;br&gt; public boolean updateResetPassword(User user, String ticket, String password) {&lt;br&gt; if(!password.matches(User.REGEX_PASSWORD))&lt;br&gt; return false;&lt;br&gt; ...

    springmvc-jdbcTemplate

    return new DataStore&lt;Map&lt;String, Object&gt;&gt;(records, new ArrayList&lt;Map&lt;String, Object&gt;&gt;()); } return new DataStore&lt;Map&lt;String, Object&gt;&gt;(records, search(pagingSqlBuilder.getPagingSql(sql, ...

    泛型DAO模型设计课堂笔记

    例如,`ArrayList&lt;String&gt; list = new ArrayList&lt;&gt;();`是正确的,因为两边的类型一致。而`ArrayList&lt;String&gt; list = new ArrayList&lt;Object&gt;();`则是错误的,因为类型不匹配。可以只在类定义时使用泛型,而在实例化时...

    wpf radiobutton模版设计成button样式

    &lt;ControlTemplate TargetType="RadioButton"&gt; &lt;!-- 新的模板内容将放在这里 --&gt; &lt;/ControlTemplate&gt; &lt;/RadioButton.Template&gt; &lt;/RadioButton&gt; ``` 2. **替换视觉元素**:用Button的视觉元素替换默认的...

    ASP.NET时尚编程百例(实例02)

    &lt;%@Import namespace="System"%&gt; &lt;script language="C#" runat="server"&gt; public void Page_Load(object sender,EventArgs e) { int re=0; int re1=0; GetRandomDefault(ref re); GetRandomDefault(ref re1); ...

    java除去类里面的黄色警告

    在Java编程中,IDE(如MyEclipse)会通过颜色编码来标识代码中的不同状态,其中黄色警告通常意味着代码可能存在潜在的问题或不建议使用的特性,但并不一定导致编译错误。这些警告旨在帮助开发者提高代码质量和性能,...

    ControlTemplate自定义控件样式

    &lt;VisualState x:Name="Unchecked"/&gt; &lt;/VisualStateGroup&gt; &lt;/VisualStateManager.VisualStateGroups&gt; &lt;Ellipse x:Name="circle" Fill="Transparent" Stroke="Black" StrokeThickness="2" Width="15" Height="15"/...

    wpf checkbox样式

    &lt;ColorAnimation Storyboard.TargetName="CheckMark" Storyboard.TargetProperty="Fill.Color" To="{StaticResource CheckedFillColor}" Duration="0" /&gt; &lt;/Storyboard&gt; &lt;/VisualState&gt; &lt;VisualState x:Name=...

    Java泛型资料

    自JDK 7开始,Java引入了类型推断(类型省略),使得在某些情况下可以省略类型参数,编译器会自动推断,如`List&lt;String&gt; list = new ArrayList&lt;&gt;();` 9. **菱形问题(Diamond Problem)** 在多继承的情况下,若...

    java泛型数组

    ArrayMaker&lt;Type&gt; am2 = new ArrayMaker&lt;Type&gt;(Type.class); System.out.println(Arrays.asList(am2.createArray(10))); System.out.println(Arrays.asList(am2.createList())); } } class Type { @Override ...

    Db2中的常用命令和导入导出

    - **export to &lt;filename&gt; of &lt;format&gt; select * from &lt;table&gt;**:导出数据到文件。 - **import from &lt;filename&gt; of &lt;format&gt; insert into &lt;table&gt;**:从文件导入数据到指定的表。 - **load from &lt;filename&gt; of ...

    Stream和Lambda表达式最佳实践

    Java 8中引入了一系列预定义的功能接口,如`Function&lt;T,R&gt;`、`BiFunction&lt;T,U,R&gt;`、`Supplier&lt;T&gt;`、`Consumer&lt;T&gt;`、`Predicate&lt;T&gt;`等,这些接口可以方便地用于Lambda表达式。 1. **`Function&lt;T,R&gt;`**:接受一个参数...

    一个用WPF写的CheckedComboBox

    本文将深入讲解如何在WPF中实现这样一个自定义控件,并提供相关的代码示例和调用方法。 **1. 概述** CheckedComboBox结合了ComboBox的下拉列表功能和CheckBox的多选特性。在默认情况下,WPF并没有提供内置的...

    JDK 1.5的泛型實現(Generics in JDK 1.5)

    template&lt;&gt;,藉此告訴編譯器哪些符號是 型別參數( type parameters),如圖 8。 template &lt;typename T&gt; class Rect : public Shape 侯捷觀點 JDK 1.5的泛型實現(Generics in JDK 1.5)7 { ...

    Maven修改运行环境配置代码实例

    &lt;arg&gt;-Xlint:unchecked&lt;/arg&gt; &lt;/compilerArgs&gt; &lt;target&gt;1.8&lt;/target&gt; &lt;source&gt;1.8&lt;/source&gt; &lt;encoding&gt;UTF-8&lt;/encoding&gt; &lt;/configuration&gt; &lt;/plugin&gt; 这样,Maven就会使用JDK1.8作为编译环境。 3. Maven修改...

    1000道+互联网Java工程师面试题.pdf

    MyBatis的动态SQL包括`&lt;if&gt;`, `&lt;choose&gt;`, `&lt;when&gt;`, `&lt;otherwise&gt;`, `&lt;where&gt;`, `&lt;set&gt;`, `&lt;foreach&gt;`等标签,用于构建条件语句。 13. **其他XML标签**: 除了基本的CRUD标签,还有`&lt;resultMap&gt;`, `&lt;association...

Global site tag (gtag.js) - Google Analytics