掌握Java、Scala等技术栈:IDEA编码工程读书笔记

版权申诉
0 下载量 49 浏览量 更新于2024-10-09 收藏 2.18MB ZIP 举报
资源摘要信息: "在当今的软件开发领域,掌握多种编程语言和工具是必备的技能。此压缩包内含的读书笔记详细记录了如何在IntelliJ IDEA环境下进行多种编程语言和框架的编码工程实践,特别是针对Java、Scala、MongoDB、Redis和Apache Spark等技术。以下是相关知识点的详细说明: Java编码实践: Java作为一种广泛使用的面向对象编程语言,是软件开发的基础。在IDEA中进行Java开发,需要熟悉项目的构建工具如Maven或Gradle,了解Java的包结构,以及掌握JDK提供的API。同时,还需掌握多线程、网络编程、异常处理等高级特性。 Scala编码实践: Scala是一种多范式的编程语言,它结合了面向对象和函数式编程的特性。在IDEA中使用Scala开发,需要了解Scala的编译器、REPL以及SBT构建工具。重要的是掌握Scala的集合、隐式转换、模式匹配和case类等。 MongoDB的使用: MongoDB是一个面向文档的NoSQL数据库。在IDEA中连接和操作MongoDB,开发者需要了解如何使用Java或Scala驱动程序来执行数据库操作。这包括对数据的CRUD操作(创建、读取、更新、删除)、索引创建以及如何利用其富文档结构和查询语言。 Redis的集成与应用: Redis是一个高性能的键值存储数据库。集成Redis到项目中,开发者需熟悉其基本数据类型(字符串、列表、集合、散列等)以及如何在IDEA中利用Redis作为缓存系统、消息队列或会话存储。了解Redis客户端的使用和数据持久化机制也是必要的。 Apache Spark的工程实践: Spark是一个大数据处理框架,支持快速的集群计算。在IDEA中开发Spark应用程序,需要了解Spark的核心概念,包括RDDs、DataFrames、DataSet以及Spark SQL。开发者还需掌握Spark的运行模式(本地模式、Standalone、Mesos、YARN),以及如何使用Spark的转换操作和行动操作。 IDEA集成开发环境: IntelliJ IDEA是Java开发中广泛使用的集成开发环境。它提供了代码自动完成、重构、版本控制集成、单元测试和调试等强大功能。了解如何在IDEA中配置和管理项目依赖、使用其插件系统以及使用Maven或SBT等构建工具对于高效的代码开发至关重要。 项目构建与版本控制: 掌握项目构建和版本控制工具是进行软件开发的基础。Maven和Gradle是流行的Java项目构建工具,它们提供项目构建、依赖管理和插件支持等功能。Git作为版本控制系统,帮助开发者进行代码的版本管理、分支管理以及协作开发。在IDEA中,了解如何通过插件或内置支持来使用这些工具,能够极大地提升开发效率。 以上知识点都是基于当前流行的软件开发技术和工具,对于任何希望在开发实践中掌握多种语言和框架的开发者来说,都是不可或缺的技能集。"

Exception in thread "main" java.lang.RuntimeException: java.lang.NoSuchFieldException: DEFAULT_TINY_CACHE_SIZE at org.apache.spark.network.util.NettyUtils.getPrivateStaticField(NettyUtils.java:131) at org.apache.spark.network.util.NettyUtils.createPooledByteBufAllocator(NettyUtils.java:118) at org.apache.spark.network.server.TransportServer.init(TransportServer.java:95) at org.apache.spark.network.server.TransportServer.<init>(TransportServer.java:74) at org.apache.spark.network.TransportContext.createServer(TransportContext.java:114) at org.apache.spark.rpc.netty.NettyRpcEnv.startServer(NettyRpcEnv.scala:118) at org.apache.spark.rpc.netty.NettyRpcEnvFactory$$anonfun$4.apply(NettyRpcEnv.scala:454) at org.apache.spark.rpc.netty.NettyRpcEnvFactory$$anonfun$4.apply(NettyRpcEnv.scala:453) at org.apache.spark.util.Utils$$anonfun$startServiceOnPort$1.apply$mcVI$sp(Utils.scala:2237) at scala.collection.immutable.Range.foreach$mVc$sp(Range.scala:160) at org.apache.spark.util.Utils$.startServiceOnPort(Utils.scala:2229) at org.apache.spark.rpc.netty.NettyRpcEnvFactory.create(NettyRpcEnv.scala:458) at org.apache.spark.rpc.RpcEnv$.create(RpcEnv.scala:56) at org.apache.spark.SparkEnv$.create(SparkEnv.scala:246) at org.apache.spark.SparkEnv$.createDriverEnv(SparkEnv.scala:175) at org.apache.spark.SparkContext.createSparkEnv(SparkContext.scala:257) at org.apache.spark.SparkContext.<init>(SparkContext.scala:432) at org.apache.spark.SparkContext$.getOrCreate(SparkContext.scala:2509) at org.apache.spark.sql.SparkSession$Builder$$anonfun$6.apply(SparkSession.scala:909) at org.apache.spark.sql.SparkSession$Builder$$anonfun$6.apply(SparkSession.scala:901) at scala.Option.getOrElse(Option.scala:121) at org.apache.spark.sql.SparkSession$Builder.getOrCreate(SparkSession.scala:901) at com.cssl.scala720.KafkaSparkStreamingHBase$.main(KafkaSparkStreamingHBase.scala:28) at com.cssl.scala720.KafkaSparkStreamingHBase.main(KafkaSparkStreamingHBase.scala) Caused by: java.lang.NoSuchFieldException: DEFAULT_TINY_CACHE_SIZE at java.lang.Class.getDeclaredField(Class.java:2070) at org.apache.spark.network.util.NettyUtils.getPrivateStaticField(NettyUtils.java:127) ... 23 more Process finished with exit code 1

2023-07-24 上传

2023-06-02 23:12:37 WARN NativeCodeLoader:60 - Unable to load native-hadoop library for your platform... using builtin-java classes where applicable Setting default log level to "WARN". To adjust logging level use sc.setLogLevel(newLevel). For SparkR, use setLogLevel(newLevel). Traceback (most recent call last): File "mysqlTest.py", line 12, in <module> jdbcDF=spark.read.format("jdbc").option("url","jdbc:mysql://localhost:3306/sparktest?useSSL=false").option("driver","com.mysql.cj.jdbc.Driver").option("dbtable","employee").option("user", "root").option("password", "123456").load() File "/usr/local/spark/python/pyspark/sql/readwriter.py", line 172, in load return self._df(self._jreader.load()) File "/usr/local/spark/python/lib/py4j-0.10.7-src.zip/py4j/java_gateway.py", line 1257, in __call__ File "/usr/local/spark/python/pyspark/sql/utils.py", line 63, in deco return f(*a, **kw) File "/usr/local/spark/python/lib/py4j-0.10.7-src.zip/py4j/protocol.py", line 328, in get_return_value py4j.protocol.Py4JJavaError: An error occurred while calling o31.load. : java.lang.ClassNotFoundException: com.mysql.cj.jdbc.Driver at java.net.URLClassLoader.findClass(URLClassLoader.java:381) at java.lang.ClassLoader.loadClass(ClassLoader.java:424) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) at org.apache.spark.sql.execution.datasources.jdbc.DriverRegistry$.register(DriverRegistry.scala:45) at org.apache.spark.sql.execution.datasources.jdbc.JDBCOptions$$anonfun$5.apply(JDBCOptions.scala:99) at org.apache.spark.sql.execution.datasources.jdbc.JDBCOptions$$anonfun$5.apply(JDBCOptions.scala:99) at scala.Option.foreach(Option.scala:257) at org.apache.spark.sql.execution.datasources.jdbc.JDBCOptions.<init>(JDBCOptions.scala:99) at org.apache.spark.sql.execution.datasources.jdbc.JDBCOptions.<init>(JDBCOptions.scala:35) at org.apache.spark.sql.execution.datasources.jdbc.JdbcRelationProvider.createRelation(JdbcRelationProvider.scala:32) at org.apache.spark.sql.execution.datasources.DataSource.resolveRelation(DataSource.scala:318) at org.apache.spark.sql.DataFrameReader.loadV1Source(DataFrameReader.scala:223) at org.apache.spark.sql.DataFrameReader.load(DataFrameReader.scala:211) at org.apache.spark.sql.DataFrameReader.load(DataFrameReader.scala:167) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at py4j.reflection.MethodInvoker.invoke(MethodInvoker.java:244) at py4j.reflection.ReflectionEngine.invoke(ReflectionEngine.java:357) at py4j.Gateway.invoke(Gateway.java:282) at py4j.commands.AbstractCommand.invokeMethod(AbstractCommand.java:132) at py4j.commands.CallCommand.execute(CallCommand.java:79) at py4j.GatewayConnection.run(GatewayConnection.java:238) at java.lang.Thread.run(Thread.java:748)

2023-06-03 上传