<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[hxl的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/imhxl</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; imhxl]]></copyright><item><title><![CDATA[从零开始学习Java Web（九）:JSP标准动作]]></title><link>https://blog.youkuaiyun.com/imhxl/article/details/73302583</link><guid>https://blog.youkuaiyun.com/imhxl/article/details/73302583</guid><author>imhxl</author><pubDate>Thu, 15 Jun 2017 21:07:36 +0800</pubDate><description><![CDATA[JSP 7大标准动作：
jsp:forward: 请求转发，将请求的处理转发到下一个页面。
jsp:include: 用于动态引入一个 JSP 页面。
jsp:plugin: 用于下载 JavaBean 或 Applet 到客户端作为插件使用。


jsp:useBean: 使用 JavaBean。
jsp:setProperty: 修改、设置 JavaBean 实例的属性值。
j]]></description><category></category></item><item><title><![CDATA[从零开始学习Java Web（八）:JSP脚本、指令]]></title><link>https://blog.youkuaiyun.com/imhxl/article/details/73195662</link><guid>https://blog.youkuaiyun.com/imhxl/article/details/73195662</guid><author>imhxl</author><pubDate>Tue, 13 Jun 2017 21:43:41 +0800</pubDate><description><![CDATA[首先，我们要了解，JSP最终会编译成为一个Servlet，可以这么理解：它每一行HTML代码编译后都会在response.getWriter().write("......")中。和Servlet一样，只实例化一次。生命周期方法为：jspInit()、_jspService()、jspDestroy()   




    JSP脚本一共有三种：
1、JSP 声明（）:用于定义实例变]]></description><category></category></item><item><title><![CDATA[从零开始学习Java Web（七）:认识8大Listener]]></title><link>https://blog.youkuaiyun.com/imhxl/article/details/72904122</link><guid>https://blog.youkuaiyun.com/imhxl/article/details/72904122</guid><author>imhxl</author><pubDate>Wed, 07 Jun 2017 21:26:07 +0800</pubDate><description><![CDATA[3个属性监听者：
1、ServletContextListener

        void contextInitialized(ServletContextEvent)
        void contextDestroyed(ServletContextEvent)
2、ServletRequestAttributeListener

        void attrib]]></description><category></category></item><item><title><![CDATA[从零开始学习Java Web（六）：session和cookie]]></title><link>https://blog.youkuaiyun.com/imhxl/article/details/72890585</link><guid>https://blog.youkuaiyun.com/imhxl/article/details/72890585</guid><author>imhxl</author><pubDate>Tue, 06 Jun 2017 22:46:37 +0800</pubDate><description><![CDATA[我们或许都对session和cookie有一些多多少少的概念，知道session是用来标识同一个用户的，cookie是客户端用来保存键值对的参数。一个会话过程就是session的一个生命周期，当session过期了，会话结束。 
那么，怎么理解session和cookie呢，它们之间有什么联系。 
首先，我们来看看session是什么时候产生的，当我们调用下面的代码时，服务器会产生一个session]]></description><category></category></item><item><title><![CDATA[从零开始学习Java Web（五）：认识重定向和转发]]></title><link>https://blog.youkuaiyun.com/imhxl/article/details/72871897</link><guid>https://blog.youkuaiyun.com/imhxl/article/details/72871897</guid><author>imhxl</author><pubDate>Mon, 05 Jun 2017 21:59:41 +0800</pubDate><description><![CDATA[简单理解：重定向（sendRedirect）就相当于你在浏览器上重新请求一次重定向的地址，不会附带本次请求的任何参数，重定向之后，浏览器上可以看到url地址有变。而转发（forward）后的请求会附带本次请求的各个参数，并且浏览器上的url保持不变，用户几乎不会知道请求转发。重定向的写法：response.sendRedirect(url); 
转发的的写法：req.getRequestDispat]]></description><category></category></item><item><title><![CDATA[从零开始学习Java Web（四）:初识HttpServletRequest和HttpServletResponse]]></title><link>https://blog.youkuaiyun.com/imhxl/article/details/72871470</link><guid>https://blog.youkuaiyun.com/imhxl/article/details/72871470</guid><author>imhxl</author><pubDate>Mon, 05 Jun 2017 21:18:12 +0800</pubDate><description><![CDATA[这两个其实也不算是什么特别的东西，从名字很容易就可以看出，一个是跟请求相关，一个跟响应有关，我们这里只列举一些常用的方法。
request:
  方法
  说明  getParameter(string)
  获取请求参数
  getAttribute(string)
  获取属性值
  setAttribute(string,object)
  设置属性值
  getSession()
  获取s]]></description><category></category></item><item><title><![CDATA[从零开始学习Java Web（三）:servlet和filter的url-pattern]]></title><link>https://blog.youkuaiyun.com/imhxl/article/details/72860837</link><guid>https://blog.youkuaiyun.com/imhxl/article/details/72860837</guid><author>imhxl</author><pubDate>Sun, 04 Jun 2017 19:28:20 +0800</pubDate><description><![CDATA[首先我们要清楚：一个请求只会执行一个servlet，可能会执行多个filter。
    servlet的url-pattern只有两种写法，一种是斜杠(/)开头，另一种是星号(*)开头带后缀。
如:/*、/abc/*、/abc.do、*.do等是合法的，/*.do、/abc/*.do都是不合法的。另外/abc*这种写法是不会报错，但是运行的时候可能达不到你希望的效果，tomcat会把他当成是]]></description><category></category></item><item><title><![CDATA[从零开始学习Java Web（二）:初步认识Servlet]]></title><link>https://blog.youkuaiyun.com/imhxl/article/details/72751168</link><guid>https://blog.youkuaiyun.com/imhxl/article/details/72751168</guid><author>imhxl</author><pubDate>Thu, 25 May 2017 20:35:27 +0800</pubDate><description><![CDATA[这一章我们不深究Servlet是什么，我们来讲讲Servlet有什么。首先先新建一个class，继承HttpServlet，然后重写Servlet生命周期的三个重要方法。

package com.hxl.servlet;

import java.io.IOException;

import javax.servlet.ServletConfig;
import javax.servlet]]></description><category></category></item><item><title><![CDATA[从零开始学习Java Web（一）：在代码中了解HTTP协议]]></title><link>https://blog.youkuaiyun.com/imhxl/article/details/72667432</link><guid>https://blog.youkuaiyun.com/imhxl/article/details/72667432</guid><author>imhxl</author><pubDate>Tue, 23 May 2017 21:25:28 +0800</pubDate><description><![CDATA[什么是HTTP协议？以前看完了百度百科一大篇幅下来，似懂非懂，过了两天，根本忘记了它到底是个什么神秘的存在。
    我：小A，你知道HTTP协议是什么东西吗，给我科普一下？
    小A：知道啊，它就是一个协议而已，没什么好讲的。
    我：......

    为了深入的了解HTTP协议，我们先写一个熟悉的带有main方法的java类，完成后点击运行
import java.i]]></description><category></category></item><item><title><![CDATA[javaweb登录验证码的实现]]></title><link>https://blog.youkuaiyun.com/imhxl/article/details/52775512</link><guid>https://blog.youkuaiyun.com/imhxl/article/details/52775512</guid><author>imhxl</author><pubDate>Mon, 10 Oct 2016 10:41:53 +0800</pubDate><description><![CDATA[使用：
Controller:生成验证码
@RequestMapping("/user/check.jpg")
	public void createCode(HttpServletRequest request, HttpServletResponse response) throws IOException {
		// 通知浏览器不要缓存
		response.setHeader("Ex]]></description><category></category></item><item><title><![CDATA[很好用的Java web分页工具类]]></title><link>https://blog.youkuaiyun.com/imhxl/article/details/52774996</link><guid>https://blog.youkuaiyun.com/imhxl/article/details/52774996</guid><author>imhxl</author><pubDate>Mon, 10 Oct 2016 10:04:23 +0800</pubDate><description><![CDATA[前言：
工作中过程中，同事给的一个后台开发分页工具类，小收藏一下~~
在jsp中，前一页和后一页分别使用previouspage和nextpage，中间的分页数值1，2，3...等，只要foreachpageBar就可以了


import java.util.List;

/**
 * 分页类
 * @author hxl
 *
 * @param 
 */

public class]]></description><category></category></item><item><title><![CDATA[使用AudioRecord实现暂停录音功能]]></title><link>https://blog.youkuaiyun.com/imhxl/article/details/52190451</link><guid>https://blog.youkuaiyun.com/imhxl/article/details/52190451</guid><author>imhxl</author><pubDate>Fri, 12 Aug 2016 11:54:10 +0800</pubDate><description><![CDATA[题外话：发现好久都没有上来写博文了，毕业设计加上公司暂时没有Android的项目做，只能去自学web上的知识，摸爬打滚到现在，花了一个多月时间根据公司的现有模板做了公司内部一个任务管理系统，感觉都是比较浅的知识，没什么可以写的。想到之前做的语音识别的项目，虽然现在没什么下文了，但是谁懂~~~将来呢？
         言归正传，项目长这样子：

设计的思路：
由于自带的AudioRecor]]></description><category></category></item><item><title><![CDATA[Android Design Support Library的使用]]></title><link>https://blog.youkuaiyun.com/imhxl/article/details/51611870</link><guid>https://blog.youkuaiyun.com/imhxl/article/details/51611870</guid><author>imhxl</author><pubDate>Wed, 08 Jun 2016 11:22:16 +0800</pubDate><description><![CDATA[大自然的搬运工]]></description><category></category></item><item><title><![CDATA[Android ListView默认选中某一项]]></title><link>https://blog.youkuaiyun.com/imhxl/article/details/51161999</link><guid>https://blog.youkuaiyun.com/imhxl/article/details/51161999</guid><author>imhxl</author><pubDate>Fri, 15 Apr 2016 15:20:57 +0800</pubDate><description><![CDATA[很多时候，在listview加载数据之后，我们希望默认选中第一项，然后我们在setAdapter之后写上如下代码：
listview.getChildAt(0).setBackgroundResource(R.color.white);发现程序崩溃：NullPointerException，事实上，setAdapter()
 是异步的 ，调用了这个方法之后 ListView 的 item 并没]]></description><category></category></item><item><title><![CDATA[科大讯飞语音无限制录音、识别功能的实现：Android studio(一)]]></title><link>https://blog.youkuaiyun.com/imhxl/article/details/50854146</link><guid>https://blog.youkuaiyun.com/imhxl/article/details/50854146</guid><author>imhxl</author><pubDate>Fri, 11 Mar 2016 10:48:30 +0800</pubDate><description><![CDATA[无限制录音时长、识别全部语音文件]]></description><category></category></item></channel></rss>