爬取大众点评商家信息

老板安排了新的任务,需要爬取一些数据,然后进行机器学习,来给决策提供依据或者建议。

当前这一步,爬取相关的大众点评商家信息,并建立关系。

当前已有:选址名称,腹地名称,选址经纬度,腹地经纬度。

思路1:筛选点评上符合要求的商铺,然后全部爬下来,再与当前已有的数据建立联系(通过经纬度,地址等方式,需要商铺的经纬度、地址等信息)

思路2:根据当前已有信息,如地址,经纬度,去点评上搜索附近的商铺,然后爬下来,这要求知道点评根据经纬度筛选商铺的接口,经过观察发现点评的APP上有这个功能,但是抓包失败。

思路3:从点评的m站上搜索,关键词为地址,然后过滤美食。结果并不好用,经常查询的是具体地址,而非商铺。

思路4:直接从爬虫群里购买数据和代码,但是可能不靠谱。

思路5:从网上搜索爬取商铺的代码,改改自己用。这种方式多数都是从web版的网页上进行爬取的,自己执行爬取的时候,得注意使用代理切换ip,不然的话,可能数据会有问题。

尝试了一番之后,大概只有第五种方法比较可行。

从百度直接搜索点评爬虫,和在gitee上搜索点评的爬虫,发现绝大多数都是爬取的都是去爬的商铺的评论,但是这顺便会爬商铺。

从中甄别一下看是不是有坐标经纬度,如果有的话最好,可以通过经纬度的计算来筛选某些点附近的商铺,然后计算。

总结下来基本还是思路1的路子。OK,开始执行。

关于寻找目标市场的思考

最初是什么想法呢。。。。。。。。

多级市场划分。

划分的维度是多方面的,比如城市等级,大小,经济,人口等。任何一项事务,扩散总是有一个过程的。多数情况下,都是由大城市发起或者由国外流入国内一线大城市,然后逐渐再扩散到二线三线直至到四五线城市。

由于身处大城市,虽然不是说随时随地都是在关注最前沿的流行的东西,但是毕竟耳濡目染,身边环境所致,还是能够意识到一些东西。尤其是逢年过节什么的,从一线城市回到家里的时候,你会觉得家里的这份“土”,其实就是潮流扩展的过程所体现出来的现象之一。

所以节假日什么的,也是二三四线城市与大城市交流沟通和打通的手段了。通过这时候从大城市到小城市的人员流动,从而促进了二三四线城市的潮流推进。

反过来说,经常在一二线城市与三四五线城市之间走动,也应该会更容易发现不同级别城市之间的差异,发现二三四五线城市的发展趋向,预见其发展潮流,从而发现其中的商机。

想要利用这个过程,就是主动去发现,然后主动去学习,效仿大城市的内容、潮流,然后带到二三线城市里去。从中应该能赚到一些潮流红利。

降维打击

对,这就是降维打击。用一种几乎已知未来的方式来操控更低维度城市的发展过程。就跟使用互联网打击传统行业一样。

三四五线城市居民的特点

根据一些已经在这个市场上火起来的应用来分析一下吧。目前已经火到大城市也能看到、知道的产品和市场,有这么几个:

  • 抖音,快手
  • 拼多多
  • 趣头条
  • 今日头条

这几个是已经十分火爆的,并且在一线城市都已经有了相当知名度的产品。他们瞄准的基本都是二三四五线的用户。甚至比较火的一些小程序,公众号等,做的也是这方面的内容,但是因为整体平台并不是这个定位,所以先不放这部分。对于今日头条是否列入这里也稍微存在争议,不过因为头条使用的推荐算法,是你越看什么,就越给你推荐什么的。所以针对二三四线城市,就会针对他们推荐他们这个市场自己关注的内容,也算是一种吧。

其他几款就不一样了,基本就是专门针对这个市场做的。

大致总结一下面对人群的特点:

  • 空闲时间多
  • 看中小利益,容易被低额小利吸引
  • 传播成本低,喜欢噱头
  • 乐于扩散

目前还有哪些东西可以在这样的市场上搬运和投放呢?思考一下,回头写。

无题

又是在咖啡厅呆了挺长的时间。什么都做了,比如看书,看小说,阅读一些文章,emmmmmm…..甚至睡觉。感觉生活又失去了方向感。

之前一段时间对区块链比较看好,自己也有意想要深入了解,因此投入相当的精力。但是回过头来看,自己投入精力的地方,其实主要并不在学习上,而是在如何参与上。自己并没有真正将这个东西了解透彻(当然自己是想了解透彻的),就已经持续参与到一些项目中了。在学习的时候,主要也围绕着这里可能用到的东西,但是更多的时候,是使用自己一知半解的知识,去强行依附正在操作的新概念项目。从概念上,其实也还好,对自己的理解力和悟性还是有一些信心的,这方面并没怎么跑偏。但是对于真正技术上的实现,自己就差的有点远了,可以说最基础的知识还没有完整的看完过。对于整个系统的理解,也没有到位,比如,到现在为止,自己对于问题:token是如何值这么多钱的 这个问题,有一个最起码看起来合理的解释。

加上正好凑这段时间,自己也换了新工作,新工作这边压力还是挺大的,要求高是一方面,大家水平都比较高,压力比较大也是一方面。上个月吧,公司经历了一番调整,而正好我也有机会单独带一个需求。也算是表现了一番吧,转正时候有意给我升级别,最终结果还没出来。这次完了之后,自己调整到另外一个部门去做另外一个东西,当然其实还不是单独的。

自己在这段时间也思考了一下,感觉把精力铺的太开还是不行,需要专注某些东西,不然自己忙不过来。当然其实这不是最主要的问题。最主要的问题之一,是自己现在已经有些懒惰了,总想做一些快速享受愉悦的短视的事情,比如看部电影,看本小说。精力没有集中在要做的事情上,哪怕自己思考过了,也仍然是这样。这才是最亟待改变的地方。如果自己的注意力能十分,不,不说十分,七八分集中吧,很多事情也做下来了,能够有一些成就。

但是这个习惯很难一下就改过来,所以想通过收敛一下自己关注的东西,让自己注意力能尽量的放在一两件事情上,算是从侧面的一种方式,让自己不用“忙”这个状态给自己找借口。

自己现在也不说能力多强多差,但是,做事情总是在那个“完成”的层面上,说不上好,也说不上差,但是更远远说不上卓越。总是需要把事情做到卓越的程度,才能真的让自己在大佬们面前露脸啊。

消费层级的逻辑

任何一个行业,想要做好,想要赚钱,都得思考清楚其中真正运作的逻辑。包括工作。

工作不就是找一个公司,签一份合同,然后自己交工,到时候发工资么?

仔细想一下,就会发现远不止如此。否则,为何工作工资有不同?为何同样的工作会有话语权的不同?为何同是工作,会有自由度的不同?

但是今天想说的不只是工作上。很多事情都是同理,所以做个普遍性的思考吧。

赚钱?挣钱?这两个词,都是为了钱,但是前面的动词明显不一样。

何为挣钱?花费自己的劳动力,包括以前储备的知识,自己的时间,脑力,体力等方式,换取自己付出这些的报酬。对,就是报酬。报酬,是你付出之后,才能得到的,如果你要持续的收入,就要有持续的付出,一旦付出停止,那么就面临“没有收入”的境地,即老人们说的“停手停口”。

然而大多数人都停留在这个阶段上,或者说层面上,很难跳出这个惯性和框架。我呢?我也没有,但是我接触并意识到了这个问题,正在努力想办法跳出来,所以才写这篇文章。

并不是说“挣钱”不好。正如现在流行的,“不要问我我的理想,我的理想是不上班”,并不只是说说,我的理想,真的是不上班,或者说有比较高的自由度,还能有很多钱花。但是,不上班和有很多钱花,一定程度上,是一个鸡和蛋的问题。

好了,不说这些了,这些问题都不是核心。核心是我要认真思考,究竟怎么样才能自由度比较高。对我当前的认知而言,就是需要比较多的钱,不用为钱而担心。

那么,在“挣钱”的层面的时候,怎么样能挣到更多的钱呢?多数情况下,给别人打工,我们才称之为“挣钱”,要用自己的付出去换,那么自己的“付出”越值钱(即价值越高),自己获得的“报酬”才有可能越高。为什么说“可能”,企业的老板都是都是商人,他们做一个企业,是为了自己的收入的,从员工的付出与给予员工的报酬之间拿到差价,才是商人的收入。所以在我理解看来,在能留下一个人的情况下,肯定会尽最大可能压低给这个人的报酬,这是天性。因此企业里制定的一系列的关于报酬的制度,除了为了方便管理之外,主要的目的就是为了降低付出“报酬”的成本。

从这里来看,在打工的情况下,想要提高收入,有两个切入点。其一,提高自己的价值,提高自己能产生的价值,让企业愿意为了你个人的价值而付出贡多的薪酬;其二,在跟企业的“定价”博弈中,拿到更高的工资。如何提高自己的价值,如何跟hr博弈在谈工资的时候不吃亏等等,不分析了,我想要做的也不是这块。

我想要做的,是摆脱“打工者”的身份。

上了这些年学,工作了这么多年,曾经有数次机会(现象级别的,社会级别的)从面前走过,上学时候的个人站、SEO,淘宝个人店,11年就看过一点的区块链,之后13、14的移动端,一直火到15、16,并行的大数据,然后人工智能等。这期间,自己稍微有些想法,曾经接触过的,有淘宝开店,区块链,移动端。这些任何一样,如果能深入做下去,都会给自己带来不菲的收益。但是都死在了浅尝辄止。

想要摆脱“打工者”的身份,必须得有自己的一份事业,持续为之投入,然后这个事业能自动的,持续的为自己带来收入。自己也早有这个意识,很多事情坚持下去,做下去,“也许”就会离自己的梦想更近一步。但是自己都没坚持下去。原因是什么?

说着说着成分析自己了。打住,继续搞赚钱分析。

赚钱嘛,用“钱”赚钱,就需要这部分钱要动起来,能自己产生收益,就是资本的运作。有人说,我那点钱,算什么资本运作啊哈哈哈。不要这么想,资本有大小,无论大小,都是资本,学会资本运作,都能产生收益。否则,你的钱多钱少,存在那里,都是死的,只能用一部分少一部分。不能运作,不能增值,不能产生收益,迟早有用完的那一天。

仔细想想,其实不只是“钱”才算作资本,一个人的人脉,资源,技能,时间,都是自己的“资本”。这些都应该运作起来,让他们发挥作用,产生价值。

(20180602补充)
想要清醒一点的活着,或者明白一点的活着,就得把自己梳理明白了。正确分析解剖自己,看清楚自己的优势劣势,然后确认自己想要做什么,然后看自己缺少什么资源,然后去通过提高自己或者寻找合作伙伴的方式弥补这些短板,从而做成自己想要做的事。

目标导向有时候也许更适合去做事情,没有目标的日子都是被动的活着做事,总是感觉被动,还会感觉累,并且总是被动思考,思考的内容总是会有缺失,毕竟没有主动思考时候更活跃,更专注。

OK,回来说赚钱。

一般来说,赚钱,就是利用自己的一些资源,用较低(或者想办法降低)的成本实现满足一些(量足够大)人的需求,同时收取相应的费用,就是赚到钱了。比如自己利用自己的地理优势,从制造厂商那里以较低的价格批发衣服,然后转而加价卖出去,然后扣除掉中间运输,存储,陈设等相关的费用,就是自己赚到的钱咯。说起来似乎就是这么简单,“做生意”其实逻辑就是很简单。

逻辑简单不代表执行、实现简单。过程中肯定会遇到很多自己想象不到的问题,但是最困难的还是第一步(自己感觉,非实践的来)。

想要做,得先选领域。这时候就得要考验一个人的眼力了。你选的领域,是不是真的有需求,你选择做的东西,有没有前途,你做的附加值,有没有人买账?这些东西一方面要考验自己思维的能力,另外一方面就要考验自己调研和信息整合的能力了。

选择什么人群呢?下面就是 摘自别人家文章,没有确切研究过。

消费能力排序?

少女》儿童》少妇》老人》狗》普通男人

我眼里的好项目

前面说到投资区块链的小伙伴见面了。
这样的见面其实挺好,从一个朋友那里看到过,说:最铁的关系,是一起赚过钱的关系。虽然自己不是特别赞同,但是感觉,这种关系,跟“一起扛过枪”的感觉应该类似。一拨想要了解一个东西,或者已经了解的,甚至精通的人呢,凑到一块,交流的氛围还是会很棒的。
我加入这样的圈子,说实话,最初肯定是冲着赚钱去的,开始的时候我怎么知道里面这么多弯弯绕,都是随着接触深入,了解深入,越来越了解原理,从而慢慢又了自己的见解。
小伙伴组织的第一批基金我没有参与,一个是当时手里没钱,另外一个是对这块了解还不够深入,甚至很多赚钱的传奇都还没有了解清楚,所以对这一块有没有如此赚钱的机会,对于这个初结识还没多久没有经过事件和时间验证的小伙伴,自己心理还是有些怀疑的。另外当时圈子里(小密圈)投资的火爆程度让自己很是怀疑,简直太疯狂,也许是因为大家都已经充满了信仰,或者子弹充足,可以肆无忌惮的投资,所以才这样疯狂。
多疯狂呢?就是一个项目,之前没有发出来任何消息让大家了解,从这个项目开始公布开始报名,到打币成功,中间只给你一天甚至半天都不到的时间。没有资料,没有白皮书,没有官网,没有代码仓库。只是知道做什么的(大致),团队可能是多么牛逼,有什么样的背景,或者有哪位大佬站台表示支持这个项目,或者已经投资了这个项目,其中尤其以徐小平,李笑来等投资大佬影响最大。
但是其实知道这些,等于对项目什么都不知道。因为自己没有去研究过这个项目,没有做过尽调,没有途径或者压根没有想要去确认这些机构,大佬是不是真正投资了这个项目。两眼一抹黑,然后就疯狂的报名打币,以防自己错过了什么项目。
当初在这样一个疯狂的环境和状态中,能最终忍下来没有去参与最初的几个项目,自己也是很不容易的,一边在焦虑着自己是不是错过了一次百倍币的机会,另外一边自己也在焦虑着万一这是个空气币怎么办,自己什么都没了解,这里提供的渠道也只是提供代投,最终赔了他们也负责不了什么的。虽然现在看来自己当时的决策还是挺英明的,但是再往前一个多月两个月,自己这样的犹豫就会错失大把大把的机会。
那么反过来说,到底什么样的项目才是好项目呢?
我自己也不知道,毕竟仍然是研究的不够深入的一个人。但是从传统项目的角度来考虑(个人感觉,既然是做项目的团队,一样也是做项目,只是做的东西不一样,因此这些考虑的方面应该不会差的太远),大致应该有这么几点:
1.项目逻辑
无论如何,项目是需要落地的,项目的逻辑最起码能说的通。不要说什么区块链是颠覆所有,区块链有其优势,同时也有其缺点,有很多传统的项目并不适合用区块链去做,老老实实的用传统的信息化手段去做就足够了,而且稳定可靠效率高,成本低。
这跟之前的互联网项目也一样。互联网创业刚火起来的时候,很多的人蜂拥进来要创业,自己在家愁眉苦脸思考出来一个场景,就觉得自己的模式已经思考好了,可以落地实施了。确实,最初这样项目也能拿到投资,但是最终,或者互联网创业风潮远未过去的时候,这样的项目就被证明是没有存活空间的于是等到把钱花光,入不敷出甚至没有收入,项目宣告破产。
之所以把项目放在第一个位置来说,是因为作为一个区块链的项目,基本上所有的东西都是透明的,而且是一个几乎全新的领域,谁说在这方面已经精通了,那几乎都是扯淡,所以作为一个用来满足人们、社会某一方面需求,解决某一方面问题的项目,逻辑必须是得能说得通的。
未完待续。

区块链学习(2)

前面说到开始投资了。

自己兑换usdt或者兑换btc,然后开始投资,这没什么问题,其实也是早就知道。但是,自己会有一种心理,就跟自己最初看某个商品什么价格一样。比如看房子,你可能从12、13年就看了,那时候是什么价,自己有一个判断,然后做了一个决策,那就是不买,觉得太贵了。无论是投资还是自住,自己都错过了一次上车的机会,这就如自己第一次看到数字币的时候一样,那时候会觉得,这不就是数字币,为什么这么贵,买了有价值吗。后面就是,房价涨涨涨涨涨,当你再去看同一个位置的同样条件的房子的时候,房价的增幅让你又重新刷新了三观。然后你会觉得,不行,我得买了。但是!但是,这个时候多数人不会觉得,当前什么价格就直接买了就好了,哪怕贷款,多数还想等等,等等,觉得这价格不合理啊,明明我那时候看的这么低,但是现在已经涨到这个价格了,我觉得我要是现在买了,那就相当于承认了之前的错误决策,承认了自己的错误。而绝大多数人是不愿意承认这个的。

我也一样,看数字币的时候也一样。早就看过,还好,最早看的时候已经特别久了,所以没造成什么影响。但是在知道最近的大行情,以及下了决定要开始投资的时候,自己也不停的看过盘面,在这过程中,一些想要买的币就不停的在涨涨涨涨。最关键的是,比特币也不停的在涨。那时候自己对usdt了解还不深,最开始就觉得,如果法币兑换数字币,那肯定还是老牌数字币比特币最靠谱啊。

未完待续。。。

去兑换币的时候,选择比特币,原因当时应该有两个,一个是对usdt不熟悉,对法币交易市场也不熟悉,总觉得usdt对美元是1:1,我用超过这个价格的钱买usdt好亏啊,总觉得应该有路子去原价买入usdt,但是自己又没有途径;另外一个,就是上面说的,我最开始看的时候,usdt并没有那么高的价格。但是比特币这个价格,我算不过来啊~ 哈哈 所以最后决定了用法币交易比特币。但是后来交易完成之后,仔细一算,其实比特币也有相当高的溢价,当时买的时候应该是10个点多了,也算是相当高。当然后面还见过更高的,这都后话了。

这样,我在知道比特币,数字货币,好几年之后,才终于有了第一次数字货币交易。因为加入了这个哥们的小密圈,跟着看好像是有一些参加ico的机会的,而这些机会基本都是用以太坊(eth)来进行计算的,所以买了比特币之后,就交易成了以太坊。

在做这笔交易之初,我的心里真正的想法是人为我亏了的。因为上来一交易就有10%的溢价,这时候从账面上看总价已经亏了10%了,心里还没从那种反应过来。这种心理也是我后来发现,并且决定要逐渐改善的。这种心理会让自己的判断出现偏差,并且只注重眼前短期的利益。当然后面很快就已经在账面上把这些钱赚回来了。

这时候从小密圈里认识了相当一波做数字货币投资,研究,交易,甚至开发的人。很幸运,很幸福,能遇到这么一波人。暂时还说不准志同道合什么的,但是同样是一群时刻关注着最新动态,最新技术,最新事物的人,碰到一起,总是轻松愉快充满激情的。

区块链学习

OK then。

先写下自己的经历。

很久之前,久到大概五六年前,我就接触比特币了。那时候还算保持着对新事物的关注。然而当时毕竟也是没有什么积蓄(现在看来,那时候多少钱都算是啊),所以一心想着自己挖矿好了,比较极客,投入也比较少(这点再次证明,有时候一个人的本钱是对一个人的思维方式有很大影响的)。研究一段时间之后,发现没有自己数字的主力语言的,于是。。。。就放一边了。

差不多一个多月之前,从朋友圈发现了一个身边的(算是)玩币的人,当时已经赚的盆满钵满了,然后做了个小基金,然后又赚了很多了于是又准备直接搞私募(貌似之前主要发家的路子也是私募)。我看小密圈价格还可以(当时很便宜,相对而言,后来涨价了十倍不止),另外自己对这样的机会还是想要了解一下里面究竟是什么样的。

随后,就了解到,他是17年上半年接触到数字币,机缘巧合。然后他们几个朋友组织的小基金(这里不得不再提一下,他本人也是很有投资头脑的,个人的资金比较少的时候,就可以联络几个关系比较好的人报团组织出比较大的资金来进行投资,这样可投资的项目和空间立刻大了很多。这是我这样的技术人没能想到的)。当时有一个天上掉下来的机会,这个圈里的朋友介绍私募itc,他们圈里的人看了看并不觉得怎么好,所以决定不投,但是那个朋友自己投了一笔。后来的结果很明显,朋友没投太多,但是也财务自由了基本上。于是他自己如醍醐灌顶,开始大力介入数字币、区块链。六七八九月,二级市场btc和私募让自己赚的盆满钵满。

他个人秉承价值投资,在真正投资一个币之前,要好好做研究,首先要研究透比特币,区块链是什么东西,底层的原理和逻辑是什么,其他的币是怎么回事,有没有落地的项目,团队成员如何,背景资历怎么样,是否活跃,开源项目提交代码是否频繁,提交的内容是什么,有没有弄虚作假,项目是否真的有意义,如果是,那么就通过私募拿到额度或者。这样看下来其实是一个正常的投资理念,我也很认可。于是决定,如果他真正看好并推荐的项目,我就仔细信任的去投私募和二级市场,自己看到什么也跟他交流一下,听取一下意见什么的。同时自己也要开始研究区块链,让自己真正了解这是个什么东西,为什么这个东西出来之后,这么多人感兴趣,这么多人去投资,去研究,去推广。

实际的投资过程并不那么一帆风顺。初期的项目手里没有钱(现在还在想,如果我五六月没有买房子而是去屯了比特币,现在也好几套房子了 哈哈,然而现实从来没有如果),错过了两个项目。后来想到之前他使用的那种跟朋友一块做投资的方式,于是我也效仿一下,当然其实只是跟好朋友交流的时候,谈到自己想要投资,比较看好这块,朋友也是在我的描述之下,觉得也是不错,所以决定一起凑一点,然后去参与一些私募。

正如上面所说,现实并不是那么一帆风顺。

在mybatis中清空/全部删除表数据

有个定时任务一直以来直接跑的增量,基于跑了一段时间的定时任务的情况来看,发现有些情况没法通过增量来处理,比如被扫描表里有数据删除掉了;这种情况在我的定时任务里就没法定位出来对相应数据做处理。而在跑了定时任务之后如果再扫描结果表把已经被删除的数据筛选出来感觉是个很糙很糟糕的做法。

于是决定,在跑定时任务之前先清空整个结果表中的数据。思考之后有以下四种方式。

1、删除表重建表(drop table , create table )
虽然这种方式速度也很快,但是在业务工程里去做DDL操作感觉不太合适,而且操作相对复杂的多,放弃这种方案。

2、使用delete from table语句删除所有数据。
从逻辑上来说这个完全没有问题。但是delete语句虽然我们在执行的时候是清空所有数据,不需要加where条件,但是实际上数据库做的操作还是一条一条删除数据。在这个过程中数据库需要对每一次操作记录事务日志。数据量比较小的时候,这个操作也很快,当数据量比较大的时候,这个操作将会耗费比较长的时间。而且delete操作并不释放空间。

3、使用 delete table 语句删除所有数据。
这种方式也是删除表中所有数据,速度也快,唯一的一点,就是不释放空间。如果没有更好的方式,我将选择这种方式来实现我的设计。显然,有更好的方式。

4、使用truncate语法清空表。
查询过truncate语法和truncate与delete语法之间的区别就会知道,不同之处就在于,truncate会直接删掉相应的数据文件,这样不仅清空数据,而且释放了空间。另外就是,速度非常快。truncate的实现方式也是通过系统直接删除文件,这样的方式基本没有更快而且更节省时间的了。

经过思考,决定选择第四种。那么在mybatis中如何去执行truncate语句呢?查询资料,篇博客说使用@Select注解 ,然后执行的脚本字符串写truncate就可以,于是按照这个方式做。做完之后单元测试的时候发现,进入方法之后既没有执行结果,也没有执行错误的异常,很是尴尬啊。。。

后来想想,按说这里是一个对表(数据)的操作,按说不应该使用Select注解啊,这是个只读的。于是尝试,将注解改为使用@Update,果然成功!

因此得出结论:在mybatis中执行truncate语句需要按照如下方式:

@Update("TRUNCATE TABLE tmp_truncate_table")
void truncate();

ps.我这里使用的是mybatis的全局注解的方式,如果是使用配置文件,应该只需要在mapper文件中添加Update标签并将语句写到里面即可。

利用JAVA注解实现pv统计功能

利用JAVA注解实现pv统计功能用到的部分资料

 

http://www.tuicool.com/articles/JN73Ejb

http://www.jb51.net/article/67050.htm

mybatis表名含有参数

表较多需要分表,或者日志等需要按照模块分表的时候,为了统一接口经常需要将最后不同的部分作为参数传入到sql中进行查询,如

表名 t_log_user,t_log_item等,在拼接如下sql

select * from t_log_*

的时候,需要将 user,item等字符串作为参数传进去。开始使用的mybatisgenerator生成的那种方式,里面传递参数都用的#{module}的方式,但是在参数存在于表名的时候,如果是字符串,mybatis会给加上单引号,即最后拼接成的sql为 select * from t_log_’user’,执行必然报错。

查找了一下网上资料,参考《http://blog.sina.com.cn/s/blog_4822be6d0101g0da.html》,需要在sql mapper xml文件中的语句块里添加 statementType=”STATEMENT” , 并且参数声明必须使用 ${module}($)符号才行。

示例:

<sql id=”selectListByModule” resultMap=”tLog” parameterMap=”tLog” statementType=”STATEMENT” >
select * from t_log_${module} where 1=1
</sql>